using System;
using System.Collections.Generic;
using System.IO;
using ProtoBuf;
using ProtoBuf.Meta;
using ProtoBuf.Message;
namespace ProtoBuf.Message{
   public class PBConvert{
       public static Object toObject(Int32 opCode, byte[] objectBytes) {
              return toObject(opCode, objectBytes, 0, objectBytes.Length);
       }
       public static Object toObject(Int32 opCode, byte[] objectBytes,int start,int count) {
            Object result = null;
            using (MemoryStream m = new MemoryStream(objectBytes,start,count)){
                switch (opCode) { 
#region 消息协议号 1000
                    case OpDefine.CSCheckGameSetting:
                        result = ProtoBuf.Serializer.Deserialize<CSCheckGameSetting>(m);
                        break;
                    case OpDefine.SCCheckGameSetting:
                        result = ProtoBuf.Serializer.Deserialize<SCCheckGameSetting>(m);
                        break;
                    case OpDefine.CSCheckVersion:
                        result = ProtoBuf.Serializer.Deserialize<CSCheckVersion>(m);
                        break;
                    case OpDefine.SCCheckVersion:
                        result = ProtoBuf.Serializer.Deserialize<SCCheckVersion>(m);
                        break;
                    case OpDefine.CSCheckActivation:
                        result = ProtoBuf.Serializer.Deserialize<CSCheckActivation>(m);
                        break;
                    case OpDefine.SCCheckActivation:
                        result = ProtoBuf.Serializer.Deserialize<SCCheckActivation>(m);
                        break;
                    case OpDefine.CSActivateAccount:
                        result = ProtoBuf.Serializer.Deserialize<CSActivateAccount>(m);
                        break;
                    case OpDefine.SCActivateAccount:
                        result = ProtoBuf.Serializer.Deserialize<SCActivateAccount>(m);
                        break;
                    case OpDefine.CSCheckDevicePreferPreset:
                        result = ProtoBuf.Serializer.Deserialize<CSCheckDevicePreferPreset>(m);
                        break;
                    case OpDefine.SCCheckDevicePreferPreset:
                        result = ProtoBuf.Serializer.Deserialize<SCCheckDevicePreferPreset>(m);
                        break;
                    case OpDefine.CSMainServerPoint:
                        result = ProtoBuf.Serializer.Deserialize<CSMainServerPoint>(m);
                        break;
                    case OpDefine.SCMainServerPoint:
                        result = ProtoBuf.Serializer.Deserialize<SCMainServerPoint>(m);
                        break;
                    case OpDefine.CSCheckCanReportErrorLog:
                        result = ProtoBuf.Serializer.Deserialize<CSCheckCanReportErrorLog>(m);
                        break;
                    case OpDefine.SCCheckCanReportErrorLog:
                        result = ProtoBuf.Serializer.Deserialize<SCCheckCanReportErrorLog>(m);
                        break;
                    case OpDefine.CSReportErrorLog:
                        result = ProtoBuf.Serializer.Deserialize<CSReportErrorLog>(m);
                        break;
                    case OpDefine.SCReportErrorLog:
                        result = ProtoBuf.Serializer.Deserialize<SCReportErrorLog>(m);
                        break;
                    case OpDefine.SCTellClientReportErrorLog:
                        result = ProtoBuf.Serializer.Deserialize<SCTellClientReportErrorLog>(m);
                        break;
#endregion
#region 消息协议号 3000
                    case OpDefine.CSPushOfflineChat:
                        result = ProtoBuf.Serializer.Deserialize<CSPushOfflineChat>(m);
                        break;
                    case OpDefine.SCPushOfflineChat:
                        result = ProtoBuf.Serializer.Deserialize<SCPushOfflineChat>(m);
                        break;
                    case OpDefine.CSSendContacterChat:
                        result = ProtoBuf.Serializer.Deserialize<CSSendContacterChat>(m);
                        break;
                    case OpDefine.SCPushContacterChat:
                        result = ProtoBuf.Serializer.Deserialize<SCPushContacterChat>(m);
                        break;
                    case OpDefine.CSSendContacterGroupChat:
                        result = ProtoBuf.Serializer.Deserialize<CSSendContacterGroupChat>(m);
                        break;
                    case OpDefine.CSSendChannelChat:
                        result = ProtoBuf.Serializer.Deserialize<CSSendChannelChat>(m);
                        break;
                    case OpDefine.SCPushChannelChat:
                        result = ProtoBuf.Serializer.Deserialize<SCPushChannelChat>(m);
                        break;
                    case OpDefine.CSUpdateChannelShowSetting:
                        result = ProtoBuf.Serializer.Deserialize<CSUpdateChannelShowSetting>(m);
                        break;
                    case OpDefine.SCChannelShowSetting:
                        result = ProtoBuf.Serializer.Deserialize<SCChannelShowSetting>(m);
                        break;
                    case OpDefine.CSGetChatGroup:
                        result = ProtoBuf.Serializer.Deserialize<CSGetChatGroup>(m);
                        break;
                    case OpDefine.SCGetChatGroup:
                        result = ProtoBuf.Serializer.Deserialize<SCGetChatGroup>(m);
                        break;
                    case OpDefine.CSQuitChatGroup:
                        result = ProtoBuf.Serializer.Deserialize<CSQuitChatGroup>(m);
                        break;
                    case OpDefine.SCPushPlayerQuitChatGroup:
                        result = ProtoBuf.Serializer.Deserialize<SCPushPlayerQuitChatGroup>(m);
                        break;
                    case OpDefine.CSDepartChatGroup:
                        result = ProtoBuf.Serializer.Deserialize<CSDepartChatGroup>(m);
                        break;
                    case OpDefine.SCPushDepartChatGroup:
                        result = ProtoBuf.Serializer.Deserialize<SCPushDepartChatGroup>(m);
                        break;
                    case OpDefine.CSInviteJoinChatGroup:
                        result = ProtoBuf.Serializer.Deserialize<CSInviteJoinChatGroup>(m);
                        break;
                    case OpDefine.SCPushMasterJudgeInvitation:
                        result = ProtoBuf.Serializer.Deserialize<SCPushMasterJudgeInvitation>(m);
                        break;
                    case OpDefine.CSMasterJudgeResult:
                        result = ProtoBuf.Serializer.Deserialize<CSMasterJudgeResult>(m);
                        break;
                    case OpDefine.SCPushChatGroupInvitation:
                        result = ProtoBuf.Serializer.Deserialize<SCPushChatGroupInvitation>(m);
                        break;
                    case OpDefine.CSReplyChatGroupInvitation:
                        result = ProtoBuf.Serializer.Deserialize<CSReplyChatGroupInvitation>(m);
                        break;
                    case OpDefine.SCPushNewChatGroupMember:
                        result = ProtoBuf.Serializer.Deserialize<SCPushNewChatGroupMember>(m);
                        break;
                    case OpDefine.CSModifyChatGroupName:
                        result = ProtoBuf.Serializer.Deserialize<CSModifyChatGroupName>(m);
                        break;
                    case OpDefine.SCPushModifyChatGroupName:
                        result = ProtoBuf.Serializer.Deserialize<SCPushModifyChatGroupName>(m);
                        break;
                    case OpDefine.CSModifyChatGroupNotice:
                        result = ProtoBuf.Serializer.Deserialize<CSModifyChatGroupNotice>(m);
                        break;
                    case OpDefine.SCPushModifyChatGroupNotice:
                        result = ProtoBuf.Serializer.Deserialize<SCPushModifyChatGroupNotice>(m);
                        break;
                    case OpDefine.CSSendGroupChat:
                        result = ProtoBuf.Serializer.Deserialize<CSSendGroupChat>(m);
                        break;
                    case OpDefine.SCPushGroupChat:
                        result = ProtoBuf.Serializer.Deserialize<SCPushGroupChat>(m);
                        break;
                    case OpDefine.CSCreateChatGroup:
                        result = ProtoBuf.Serializer.Deserialize<CSCreateChatGroup>(m);
                        break;
                    case OpDefine.SCCreateChatGroup:
                        result = ProtoBuf.Serializer.Deserialize<SCCreateChatGroup>(m);
                        break;
                    case OpDefine.CSUpdateChatGroupMessageRemind:
                        result = ProtoBuf.Serializer.Deserialize<CSUpdateChatGroupMessageRemind>(m);
                        break;
                    case OpDefine.SCUpdateChatGroupMessageRemind:
                        result = ProtoBuf.Serializer.Deserialize<SCUpdateChatGroupMessageRemind>(m);
                        break;
                    case OpDefine.CSUpdateChatGroupOnlyMasterInvite:
                        result = ProtoBuf.Serializer.Deserialize<CSUpdateChatGroupOnlyMasterInvite>(m);
                        break;
                    case OpDefine.SCPushChatGroupOnlyMasterInvite:
                        result = ProtoBuf.Serializer.Deserialize<SCPushChatGroupOnlyMasterInvite>(m);
                        break;
                    case OpDefine.CSChatGroupKickMember:
                        result = ProtoBuf.Serializer.Deserialize<CSChatGroupKickMember>(m);
                        break;
                    case OpDefine.SCPushSystemContacterChat:
                        result = ProtoBuf.Serializer.Deserialize<SCPushSystemContacterChat>(m);
                        break;
                    case OpDefine.CSVipCustomerComment:
                        result = ProtoBuf.Serializer.Deserialize<CSVipCustomerComment>(m);
                        break;
                    case OpDefine.SCJoinChatGroupMember:
                        result = ProtoBuf.Serializer.Deserialize<SCJoinChatGroupMember>(m);
                        break;
                    case OpDefine.CSDirtyFilter:
                        result = ProtoBuf.Serializer.Deserialize<CSDirtyFilter>(m);
                        break;
                    case OpDefine.SCDirtyFilter:
                        result = ProtoBuf.Serializer.Deserialize<SCDirtyFilter>(m);
                        break;
#endregion
#region 消息协议号 1200
                    case OpDefine.CSGetContacters:
                        result = ProtoBuf.Serializer.Deserialize<CSGetContacters>(m);
                        break;
                    case OpDefine.SCGetContacters:
                        result = ProtoBuf.Serializer.Deserialize<SCGetContacters>(m);
                        break;
                    case OpDefine.CSGetRecentContacters:
                        result = ProtoBuf.Serializer.Deserialize<CSGetRecentContacters>(m);
                        break;
                    case OpDefine.SCGetRecentContacters:
                        result = ProtoBuf.Serializer.Deserialize<SCGetRecentContacters>(m);
                        break;
                    case OpDefine.CSGetRecentInteractionContacters:
                        result = ProtoBuf.Serializer.Deserialize<CSGetRecentInteractionContacters>(m);
                        break;
                    case OpDefine.SCGetRecentInteractionContacters:
                        result = ProtoBuf.Serializer.Deserialize<SCGetRecentInteractionContacters>(m);
                        break;
                    case OpDefine.CSGetContacterGroup:
                        result = ProtoBuf.Serializer.Deserialize<CSGetContacterGroup>(m);
                        break;
                    case OpDefine.SCGetContacterGroup:
                        result = ProtoBuf.Serializer.Deserialize<SCGetContacterGroup>(m);
                        break;
                    case OpDefine.CSGetSetting:
                        result = ProtoBuf.Serializer.Deserialize<CSGetSetting>(m);
                        break;
                    case OpDefine.SCGetSetting:
                        result = ProtoBuf.Serializer.Deserialize<SCGetSetting>(m);
                        break;
                    case OpDefine.CSGetApplyContacters:
                        result = ProtoBuf.Serializer.Deserialize<CSGetApplyContacters>(m);
                        break;
                    case OpDefine.SCGetApplyContacters:
                        result = ProtoBuf.Serializer.Deserialize<SCGetApplyContacters>(m);
                        break;
                    case OpDefine.CSApplyContacter:
                        result = ProtoBuf.Serializer.Deserialize<CSApplyContacter>(m);
                        break;
                    case OpDefine.SCApplyContacter:
                        result = ProtoBuf.Serializer.Deserialize<SCApplyContacter>(m);
                        break;
                    case OpDefine.SCPushApplyContacter:
                        result = ProtoBuf.Serializer.Deserialize<SCPushApplyContacter>(m);
                        break;
                    case OpDefine.CSDeleteContacter:
                        result = ProtoBuf.Serializer.Deserialize<CSDeleteContacter>(m);
                        break;
                    case OpDefine.SCDeleteContacter:
                        result = ProtoBuf.Serializer.Deserialize<SCDeleteContacter>(m);
                        break;
                    case OpDefine.CSEditContacterGroup:
                        result = ProtoBuf.Serializer.Deserialize<CSEditContacterGroup>(m);
                        break;
                    case OpDefine.SCEditContacterGroup:
                        result = ProtoBuf.Serializer.Deserialize<SCEditContacterGroup>(m);
                        break;
                    case OpDefine.CSModifyGroupName:
                        result = ProtoBuf.Serializer.Deserialize<CSModifyGroupName>(m);
                        break;
                    case OpDefine.SCModifyGroupName:
                        result = ProtoBuf.Serializer.Deserialize<SCModifyGroupName>(m);
                        break;
                    case OpDefine.CSGetContactersByKeyWord:
                        result = ProtoBuf.Serializer.Deserialize<CSGetContactersByKeyWord>(m);
                        break;
                    case OpDefine.SCGetContactersByKeyWord:
                        result = ProtoBuf.Serializer.Deserialize<SCGetContactersByKeyWord>(m);
                        break;
                    case OpDefine.CSClearContacterApply:
                        result = ProtoBuf.Serializer.Deserialize<CSClearContacterApply>(m);
                        break;
                    case OpDefine.SCClearContacterApply:
                        result = ProtoBuf.Serializer.Deserialize<SCClearContacterApply>(m);
                        break;
                    case OpDefine.CSAddBlackList:
                        result = ProtoBuf.Serializer.Deserialize<CSAddBlackList>(m);
                        break;
                    case OpDefine.SCAddBlackList:
                        result = ProtoBuf.Serializer.Deserialize<SCAddBlackList>(m);
                        break;
                    case OpDefine.CSRemoveBlackList:
                        result = ProtoBuf.Serializer.Deserialize<CSRemoveBlackList>(m);
                        break;
                    case OpDefine.SCRemoveBlackList:
                        result = ProtoBuf.Serializer.Deserialize<SCRemoveBlackList>(m);
                        break;
                    case OpDefine.CSRemoveEnemy:
                        result = ProtoBuf.Serializer.Deserialize<CSRemoveEnemy>(m);
                        break;
                    case OpDefine.SCRemoveEnemy:
                        result = ProtoBuf.Serializer.Deserialize<SCRemoveEnemy>(m);
                        break;
                    case OpDefine.CSRemoveLastContact:
                        result = ProtoBuf.Serializer.Deserialize<CSRemoveLastContact>(m);
                        break;
                    case OpDefine.SCRemoveLastContact:
                        result = ProtoBuf.Serializer.Deserialize<SCRemoveLastContact>(m);
                        break;
                    case OpDefine.CSRemoveLastInteract:
                        result = ProtoBuf.Serializer.Deserialize<CSRemoveLastInteract>(m);
                        break;
                    case OpDefine.SCRemoveLastInteract:
                        result = ProtoBuf.Serializer.Deserialize<SCRemoveLastInteract>(m);
                        break;
                    case OpDefine.CSModifySetting:
                        result = ProtoBuf.Serializer.Deserialize<CSModifySetting>(m);
                        break;
                    case OpDefine.SCModifySetting:
                        result = ProtoBuf.Serializer.Deserialize<SCModifySetting>(m);
                        break;
                    case OpDefine.CSModifyGroupReceiveMode:
                        result = ProtoBuf.Serializer.Deserialize<CSModifyGroupReceiveMode>(m);
                        break;
                    case OpDefine.SCModifyGroupReceiveMode:
                        result = ProtoBuf.Serializer.Deserialize<SCModifyGroupReceiveMode>(m);
                        break;
                    case OpDefine.CSBatchDeleteContacter:
                        result = ProtoBuf.Serializer.Deserialize<CSBatchDeleteContacter>(m);
                        break;
                    case OpDefine.SCBatchDeleteContacter:
                        result = ProtoBuf.Serializer.Deserialize<SCBatchDeleteContacter>(m);
                        break;
                    case OpDefine.SCPushFriendOnlineState:
                        result = ProtoBuf.Serializer.Deserialize<SCPushFriendOnlineState>(m);
                        break;
                    case OpDefine.SCPushFriendInfo:
                        result = ProtoBuf.Serializer.Deserialize<SCPushFriendInfo>(m);
                        break;
                    case OpDefine.SCPushLastInteraction:
                        result = ProtoBuf.Serializer.Deserialize<SCPushLastInteraction>(m);
                        break;
                    case OpDefine.SCPushAddEnemy:
                        result = ProtoBuf.Serializer.Deserialize<SCPushAddEnemy>(m);
                        break;
                    case OpDefine.CSReadRedPoinMsg:
                        result = ProtoBuf.Serializer.Deserialize<CSReadRedPoinMsg>(m);
                        break;
                    case OpDefine.SCUpdateKuafuFriendInfo:
                        result = ProtoBuf.Serializer.Deserialize<SCUpdateKuafuFriendInfo>(m);
                        break;
                    case OpDefine.SCPushKuafuRecent:
                        result = ProtoBuf.Serializer.Deserialize<SCPushKuafuRecent>(m);
                        break;
                    case OpDefine.SCPushKuafuFriend:
                        result = ProtoBuf.Serializer.Deserialize<SCPushKuafuFriend>(m);
                        break;
                    case OpDefine.SCfriendToEnemyConfirm:
                        result = ProtoBuf.Serializer.Deserialize<SCfriendToEnemyConfirm>(m);
                        break;
                    case OpDefine.CSfriendToEnemyConfirm:
                        result = ProtoBuf.Serializer.Deserialize<CSfriendToEnemyConfirm>(m);
                        break;
#endregion
#region Default4 4000
                    case OpDefine.CSCreateFaceToFaceDealing:
                        result = ProtoBuf.Serializer.Deserialize<CSCreateFaceToFaceDealing>(m);
                        break;
                    case OpDefine.SCCreateFaceToFaceDealing:
                        result = ProtoBuf.Serializer.Deserialize<SCCreateFaceToFaceDealing>(m);
                        break;
                    case OpDefine.CSSellerPutAndLockItem:
                        result = ProtoBuf.Serializer.Deserialize<CSSellerPutAndLockItem>(m);
                        break;
                    case OpDefine.SCSellerPutAndLockItem:
                        result = ProtoBuf.Serializer.Deserialize<SCSellerPutAndLockItem>(m);
                        break;
                    case OpDefine.CSBuyerLockItem:
                        result = ProtoBuf.Serializer.Deserialize<CSBuyerLockItem>(m);
                        break;
                    case OpDefine.SCBuyerLockItem:
                        result = ProtoBuf.Serializer.Deserialize<SCBuyerLockItem>(m);
                        break;
                    case OpDefine.CSConfirmFaceToFaceDealing:
                        result = ProtoBuf.Serializer.Deserialize<CSConfirmFaceToFaceDealing>(m);
                        break;
                    case OpDefine.SCConfirmFaceToFaceDealing:
                        result = ProtoBuf.Serializer.Deserialize<SCConfirmFaceToFaceDealing>(m);
                        break;
                    case OpDefine.CSCancelFaceToFaceDealing:
                        result = ProtoBuf.Serializer.Deserialize<CSCancelFaceToFaceDealing>(m);
                        break;
                    case OpDefine.SCCancelFaceToFaceDealing:
                        result = ProtoBuf.Serializer.Deserialize<SCCancelFaceToFaceDealing>(m);
                        break;
                    case OpDefine.CSGetDealingList:
                        result = ProtoBuf.Serializer.Deserialize<CSGetDealingList>(m);
                        break;
                    case OpDefine.SCGetDealingList:
                        result = ProtoBuf.Serializer.Deserialize<SCGetDealingList>(m);
                        break;
                    case OpDefine.CSGainMoney:
                        result = ProtoBuf.Serializer.Deserialize<CSGainMoney>(m);
                        break;
                    case OpDefine.SCGainMoney:
                        result = ProtoBuf.Serializer.Deserialize<SCGainMoney>(m);
                        break;
                    case OpDefine.CSAgreeFaceToFaceDealing:
                        result = ProtoBuf.Serializer.Deserialize<CSAgreeFaceToFaceDealing>(m);
                        break;
                    case OpDefine.SCAgreeFaceToFaceDealing:
                        result = ProtoBuf.Serializer.Deserialize<SCAgreeFaceToFaceDealing>(m);
                        break;
                    case OpDefine.CSRefuseFaceToFaceDealing:
                        result = ProtoBuf.Serializer.Deserialize<CSRefuseFaceToFaceDealing>(m);
                        break;
                    case OpDefine.SCRefuseFaceToFaceDealing:
                        result = ProtoBuf.Serializer.Deserialize<SCRefuseFaceToFaceDealing>(m);
                        break;
                    case OpDefine.SCGetGagInfo:
                        result = ProtoBuf.Serializer.Deserialize<SCGetGagInfo>(m);
                        break;
                    case OpDefine.CSSubmitPromiseMoney:
                        result = ProtoBuf.Serializer.Deserialize<CSSubmitPromiseMoney>(m);
                        break;
                    case OpDefine.SCSubmitPromiseMoney:
                        result = ProtoBuf.Serializer.Deserialize<SCSubmitPromiseMoney>(m);
                        break;
                    case OpDefine.CSGetPromiseMoney:
                        result = ProtoBuf.Serializer.Deserialize<CSGetPromiseMoney>(m);
                        break;
                    case OpDefine.SCGetPromiseMoney:
                        result = ProtoBuf.Serializer.Deserialize<SCGetPromiseMoney>(m);
                        break;
                    case OpDefine.CSScanGagRemainTime:
                        result = ProtoBuf.Serializer.Deserialize<CSScanGagRemainTime>(m);
                        break;
                    case OpDefine.SCScanGagRemainTime:
                        result = ProtoBuf.Serializer.Deserialize<SCScanGagRemainTime>(m);
                        break;
                    case OpDefine.CSClearGagTimes:
                        result = ProtoBuf.Serializer.Deserialize<CSClearGagTimes>(m);
                        break;
                    case OpDefine.SCClearGagTimes:
                        result = ProtoBuf.Serializer.Deserialize<SCClearGagTimes>(m);
                        break;
                    case OpDefine.CSReportPlayer:
                        result = ProtoBuf.Serializer.Deserialize<CSReportPlayer>(m);
                        break;
#endregion
#region 新手引导模块 17301-17400
                    case OpDefine.CSGetCompletedGuides:
                        result = ProtoBuf.Serializer.Deserialize<CSGetCompletedGuides>(m);
                        break;
                    case OpDefine.SCGetCompletedGuides:
                        result = ProtoBuf.Serializer.Deserialize<SCGetCompletedGuides>(m);
                        break;
                    case OpDefine.CSSkipGuide:
                        result = ProtoBuf.Serializer.Deserialize<CSSkipGuide>(m);
                        break;
                    case OpDefine.SCSkipGuide:
                        result = ProtoBuf.Serializer.Deserialize<SCSkipGuide>(m);
                        break;
                    case OpDefine.CSCompleteGuide:
                        result = ProtoBuf.Serializer.Deserialize<CSCompleteGuide>(m);
                        break;
                    case OpDefine.SCCompleteGuide:
                        result = ProtoBuf.Serializer.Deserialize<SCCompleteGuide>(m);
                        break;
                    case OpDefine.SCSyncGuideIds:
                        result = ProtoBuf.Serializer.Deserialize<SCSyncGuideIds>(m);
                        break;
                    case OpDefine.CSUpdateGuideMark:
                        result = ProtoBuf.Serializer.Deserialize<CSUpdateGuideMark>(m);
                        break;
                    case OpDefine.SCUpdateGuideMark:
                        result = ProtoBuf.Serializer.Deserialize<SCUpdateGuideMark>(m);
                        break;
#endregion
#region 消息协议号 8000
                    case OpDefine.SCIdentityAdd:
                        result = ProtoBuf.Serializer.Deserialize<SCIdentityAdd>(m);
                        break;
                    case OpDefine.SCIdentityRemove:
                        result = ProtoBuf.Serializer.Deserialize<SCIdentityRemove>(m);
                        break;
#endregion
#region 消息协议号 11101
                    case OpDefine.SCUpdateContainer:
                        result = ProtoBuf.Serializer.Deserialize<SCUpdateContainer>(m);
                        break;
                    case OpDefine.CSUseItem:
                        result = ProtoBuf.Serializer.Deserialize<CSUseItem>(m);
                        break;
                    case OpDefine.SCUseItem:
                        result = ProtoBuf.Serializer.Deserialize<SCUseItem>(m);
                        break;
                    case OpDefine.CSSortItemContainer:
                        result = ProtoBuf.Serializer.Deserialize<CSSortItemContainer>(m);
                        break;
                    case OpDefine.SCSortItemContainer:
                        result = ProtoBuf.Serializer.Deserialize<SCSortItemContainer>(m);
                        break;
                    case OpDefine.CSBuyStorage:
                        result = ProtoBuf.Serializer.Deserialize<CSBuyStorage>(m);
                        break;
                    case OpDefine.SCBuyStorage:
                        result = ProtoBuf.Serializer.Deserialize<SCBuyStorage>(m);
                        break;
                    case OpDefine.CSCellBuy:
                        result = ProtoBuf.Serializer.Deserialize<CSCellBuy>(m);
                        break;
                    case OpDefine.SCCellBuy:
                        result = ProtoBuf.Serializer.Deserialize<SCCellBuy>(m);
                        break;
                    case OpDefine.CSCellMove:
                        result = ProtoBuf.Serializer.Deserialize<CSCellMove>(m);
                        break;
                    case OpDefine.SCCellMove:
                        result = ProtoBuf.Serializer.Deserialize<SCCellMove>(m);
                        break;
                    case OpDefine.CSItemSell:
                        result = ProtoBuf.Serializer.Deserialize<CSItemSell>(m);
                        break;
                    case OpDefine.SCItemSell:
                        result = ProtoBuf.Serializer.Deserialize<SCItemSell>(m);
                        break;
                    case OpDefine.CSItemBind:
                        result = ProtoBuf.Serializer.Deserialize<CSItemBind>(m);
                        break;
                    case OpDefine.SCItemBind:
                        result = ProtoBuf.Serializer.Deserialize<SCItemBind>(m);
                        break;
                    case OpDefine.CSItemSellRepair:
                        result = ProtoBuf.Serializer.Deserialize<CSItemSellRepair>(m);
                        break;
                    case OpDefine.SCItemSellRepair:
                        result = ProtoBuf.Serializer.Deserialize<SCItemSellRepair>(m);
                        break;
#endregion
#region 消息协议号 1050
                    case OpDefine.CSGetServerInfo:
                        result = ProtoBuf.Serializer.Deserialize<CSGetServerInfo>(m);
                        break;
                    case OpDefine.SCGetServerInfo:
                        result = ProtoBuf.Serializer.Deserialize<SCGetServerInfo>(m);
                        break;
                    case OpDefine.CSPlayerLogin:
                        result = ProtoBuf.Serializer.Deserialize<CSPlayerLogin>(m);
                        break;
                    case OpDefine.SCPlayerLogin:
                        result = ProtoBuf.Serializer.Deserialize<SCPlayerLogin>(m);
                        break;
                    case OpDefine.CSSyncTime:
                        result = ProtoBuf.Serializer.Deserialize<CSSyncTime>(m);
                        break;
                    case OpDefine.SCSyncTime:
                        result = ProtoBuf.Serializer.Deserialize<SCSyncTime>(m);
                        break;
                    case OpDefine.CSLoginCheckByName:
                        result = ProtoBuf.Serializer.Deserialize<CSLoginCheckByName>(m);
                        break;
                    case OpDefine.SCLoginCheckByName:
                        result = ProtoBuf.Serializer.Deserialize<SCLoginCheckByName>(m);
                        break;
                    case OpDefine.CSGetRandomName:
                        result = ProtoBuf.Serializer.Deserialize<CSGetRandomName>(m);
                        break;
                    case OpDefine.SCGetRandomName:
                        result = ProtoBuf.Serializer.Deserialize<SCGetRandomName>(m);
                        break;
                    case OpDefine.CSCreatePlayer:
                        result = ProtoBuf.Serializer.Deserialize<CSCreatePlayer>(m);
                        break;
                    case OpDefine.SCCreatePlayer:
                        result = ProtoBuf.Serializer.Deserialize<SCCreatePlayer>(m);
                        break;
                    case OpDefine.CSGetCurrency:
                        result = ProtoBuf.Serializer.Deserialize<CSGetCurrency>(m);
                        break;
                    case OpDefine.SCGetCurrency:
                        result = ProtoBuf.Serializer.Deserialize<SCGetCurrency>(m);
                        break;
                    case OpDefine.CSPlayerRename:
                        result = ProtoBuf.Serializer.Deserialize<CSPlayerRename>(m);
                        break;
                    case OpDefine.SCPlayerRename:
                        result = ProtoBuf.Serializer.Deserialize<SCPlayerRename>(m);
                        break;
                    case OpDefine.CSRewardCode:
                        result = ProtoBuf.Serializer.Deserialize<CSRewardCode>(m);
                        break;
                    case OpDefine.SCRewardCode:
                        result = ProtoBuf.Serializer.Deserialize<SCRewardCode>(m);
                        break;
                    case OpDefine.SCServerFull:
                        result = ProtoBuf.Serializer.Deserialize<SCServerFull>(m);
                        break;
                    case OpDefine.SCNotifyPlayer2Login:
                        result = ProtoBuf.Serializer.Deserialize<SCNotifyPlayer2Login>(m);
                        break;
                    case OpDefine.SCRankUpdate:
                        result = ProtoBuf.Serializer.Deserialize<SCRankUpdate>(m);
                        break;
                    case OpDefine.CSGetServerList:
                        result = ProtoBuf.Serializer.Deserialize<CSGetServerList>(m);
                        break;
                    case OpDefine.SCGetServerList:
                        result = ProtoBuf.Serializer.Deserialize<SCGetServerList>(m);
                        break;
                    case OpDefine.SCLoginPushEnd:
                        result = ProtoBuf.Serializer.Deserialize<SCLoginPushEnd>(m);
                        break;
#endregion
#region Default8 8000
                    case OpDefine.CSGetMailList:
                        result = ProtoBuf.Serializer.Deserialize<CSGetMailList>(m);
                        break;
                    case OpDefine.SCGetMailList:
                        result = ProtoBuf.Serializer.Deserialize<SCGetMailList>(m);
                        break;
                    case OpDefine.CSGetMailItems:
                        result = ProtoBuf.Serializer.Deserialize<CSGetMailItems>(m);
                        break;
                    case OpDefine.SCGetMailItems:
                        result = ProtoBuf.Serializer.Deserialize<SCGetMailItems>(m);
                        break;
                    case OpDefine.CSDeleteMail:
                        result = ProtoBuf.Serializer.Deserialize<CSDeleteMail>(m);
                        break;
                    case OpDefine.SCDeleteMail:
                        result = ProtoBuf.Serializer.Deserialize<SCDeleteMail>(m);
                        break;
                    case OpDefine.SCUpdateMail:
                        result = ProtoBuf.Serializer.Deserialize<SCUpdateMail>(m);
                        break;
                    case OpDefine.SCReadMail:
                        result = ProtoBuf.Serializer.Deserialize<SCReadMail>(m);
                        break;
                    case OpDefine.CSGetMailItemsAll:
                        result = ProtoBuf.Serializer.Deserialize<CSGetMailItemsAll>(m);
                        break;
                    case OpDefine.SCGetMailItemsAll:
                        result = ProtoBuf.Serializer.Deserialize<SCGetMailItemsAll>(m);
                        break;
                    case OpDefine.CSDeleteMailAll:
                        result = ProtoBuf.Serializer.Deserialize<CSDeleteMailAll>(m);
                        break;
                    case OpDefine.SCDeleteMailAll:
                        result = ProtoBuf.Serializer.Deserialize<SCDeleteMailAll>(m);
                        break;
#endregion
#region 消息协议号 3201-3250
                    case OpDefine.CSPlayerDisplayInformation:
                        result = ProtoBuf.Serializer.Deserialize<CSPlayerDisplayInformation>(m);
                        break;
                    case OpDefine.SCPlayerDisplayInformation:
                        result = ProtoBuf.Serializer.Deserialize<SCPlayerDisplayInformation>(m);
                        break;
                    case OpDefine.CSPlayerInformation:
                        result = ProtoBuf.Serializer.Deserialize<CSPlayerInformation>(m);
                        break;
                    case OpDefine.SCPlayerInformation:
                        result = ProtoBuf.Serializer.Deserialize<SCPlayerInformation>(m);
                        break;
                    case OpDefine.CSUploadSubmitFlag:
                        result = ProtoBuf.Serializer.Deserialize<CSUploadSubmitFlag>(m);
                        break;
                    case OpDefine.SCUploadSubmitFlag:
                        result = ProtoBuf.Serializer.Deserialize<SCUploadSubmitFlag>(m);
                        break;
                    case OpDefine.SCShowWindow:
                        result = ProtoBuf.Serializer.Deserialize<SCShowWindow>(m);
                        break;
                    case OpDefine.CSCheckWindowOption:
                        result = ProtoBuf.Serializer.Deserialize<CSCheckWindowOption>(m);
                        break;
#endregion
#region Default9 9000
                    case OpDefine.CSAttentionItem:
                        result = ProtoBuf.Serializer.Deserialize<CSAttentionItem>(m);
                        break;
                    case OpDefine.SCAttentionItem:
                        result = ProtoBuf.Serializer.Deserialize<SCAttentionItem>(m);
                        break;
                    case OpDefine.CSCancleAttentionItem:
                        result = ProtoBuf.Serializer.Deserialize<CSCancleAttentionItem>(m);
                        break;
                    case OpDefine.SCCancleAttentionItem:
                        result = ProtoBuf.Serializer.Deserialize<SCCancleAttentionItem>(m);
                        break;
                    case OpDefine.CSGetHistoryItemById:
                        result = ProtoBuf.Serializer.Deserialize<CSGetHistoryItemById>(m);
                        break;
                    case OpDefine.SCGetHistoryItemById:
                        result = ProtoBuf.Serializer.Deserialize<SCGetHistoryItemById>(m);
                        break;
                    case OpDefine.CSGetAllItemsCountById:
                        result = ProtoBuf.Serializer.Deserialize<CSGetAllItemsCountById>(m);
                        break;
                    case OpDefine.SCGetAllItemsCountById:
                        result = ProtoBuf.Serializer.Deserialize<SCGetAllItemsCountById>(m);
                        break;
                    case OpDefine.CSPlayerShopBuyItem:
                        result = ProtoBuf.Serializer.Deserialize<CSPlayerShopBuyItem>(m);
                        break;
                    case OpDefine.SCPlayerShopBuyItem:
                        result = ProtoBuf.Serializer.Deserialize<SCPlayerShopBuyItem>(m);
                        break;
                    case OpDefine.CSSetUpShop:
                        result = ProtoBuf.Serializer.Deserialize<CSSetUpShop>(m);
                        break;
                    case OpDefine.SCSetUpShop:
                        result = ProtoBuf.Serializer.Deserialize<SCSetUpShop>(m);
                        break;
                    case OpDefine.CSGetShopInfo:
                        result = ProtoBuf.Serializer.Deserialize<CSGetShopInfo>(m);
                        break;
                    case OpDefine.SCGetShopInfo:
                        result = ProtoBuf.Serializer.Deserialize<SCGetShopInfo>(m);
                        break;
                    case OpDefine.CSUnlockShopPostion:
                        result = ProtoBuf.Serializer.Deserialize<CSUnlockShopPostion>(m);
                        break;
                    case OpDefine.SCUnlockShopPostion:
                        result = ProtoBuf.Serializer.Deserialize<SCUnlockShopPostion>(m);
                        break;
                    case OpDefine.CSOtherPlayerSellItem:
                        result = ProtoBuf.Serializer.Deserialize<CSOtherPlayerSellItem>(m);
                        break;
                    case OpDefine.SCOtherPlayerSellItem:
                        result = ProtoBuf.Serializer.Deserialize<SCOtherPlayerSellItem>(m);
                        break;
                    case OpDefine.CSSellItem:
                        result = ProtoBuf.Serializer.Deserialize<CSSellItem>(m);
                        break;
                    case OpDefine.SCSellItem:
                        result = ProtoBuf.Serializer.Deserialize<SCSellItem>(m);
                        break;
                    case OpDefine.CSTakeOutSellItem:
                        result = ProtoBuf.Serializer.Deserialize<CSTakeOutSellItem>(m);
                        break;
                    case OpDefine.SCTakeOutSellItem:
                        result = ProtoBuf.Serializer.Deserialize<SCTakeOutSellItem>(m);
                        break;
                    case OpDefine.CSChangeShopName:
                        result = ProtoBuf.Serializer.Deserialize<CSChangeShopName>(m);
                        break;
                    case OpDefine.SCChangeShopName:
                        result = ProtoBuf.Serializer.Deserialize<SCChangeShopName>(m);
                        break;
                    case OpDefine.CSPutIntoShopMoney:
                        result = ProtoBuf.Serializer.Deserialize<CSPutIntoShopMoney>(m);
                        break;
                    case OpDefine.SCPutIntoShopMoney:
                        result = ProtoBuf.Serializer.Deserialize<SCPutIntoShopMoney>(m);
                        break;
                    case OpDefine.CSGetOutShopMoney:
                        result = ProtoBuf.Serializer.Deserialize<CSGetOutShopMoney>(m);
                        break;
                    case OpDefine.SCGetOutShopMoney:
                        result = ProtoBuf.Serializer.Deserialize<SCGetOutShopMoney>(m);
                        break;
                    case OpDefine.CSGetAllPublicityGoods:
                        result = ProtoBuf.Serializer.Deserialize<CSGetAllPublicityGoods>(m);
                        break;
                    case OpDefine.SCGetAllPublicityGoods:
                        result = ProtoBuf.Serializer.Deserialize<SCGetAllPublicityGoods>(m);
                        break;
                    case OpDefine.CSGetMyAttentionGoods:
                        result = ProtoBuf.Serializer.Deserialize<CSGetMyAttentionGoods>(m);
                        break;
                    case OpDefine.SCGetMyAttentionGoods:
                        result = ProtoBuf.Serializer.Deserialize<SCGetMyAttentionGoods>(m);
                        break;
                    case OpDefine.CSPlayerShopTopDealingList:
                        result = ProtoBuf.Serializer.Deserialize<CSPlayerShopTopDealingList>(m);
                        break;
                    case OpDefine.SCPlayerShopTopDealingList:
                        result = ProtoBuf.Serializer.Deserialize<SCPlayerShopTopDealingList>(m);
                        break;
                    case OpDefine.CSPlayShopCommodityReset:
                        result = ProtoBuf.Serializer.Deserialize<CSPlayShopCommodityReset>(m);
                        break;
                    case OpDefine.SCPlayShopCommodityReset:
                        result = ProtoBuf.Serializer.Deserialize<SCPlayShopCommodityReset>(m);
                        break;
                    case OpDefine.CSGetPlayerShopItemList:
                        result = ProtoBuf.Serializer.Deserialize<CSGetPlayerShopItemList>(m);
                        break;
                    case OpDefine.SCGetPlayerShopItemList:
                        result = ProtoBuf.Serializer.Deserialize<SCGetPlayerShopItemList>(m);
                        break;
                    case OpDefine.CSGetAllItemsCountBySearch:
                        result = ProtoBuf.Serializer.Deserialize<CSGetAllItemsCountBySearch>(m);
                        break;
                    case OpDefine.SCGetAllItemsCountBySearch:
                        result = ProtoBuf.Serializer.Deserialize<SCGetAllItemsCountBySearch>(m);
                        break;
#endregion
#region 消息协议号 15301
                    case OpDefine.CSRedPointList:
                        result = ProtoBuf.Serializer.Deserialize<CSRedPointList>(m);
                        break;
                    case OpDefine.SCRedPoingList:
                        result = ProtoBuf.Serializer.Deserialize<SCRedPoingList>(m);
                        break;
                    case OpDefine.CSRemoveRedPoint:
                        result = ProtoBuf.Serializer.Deserialize<CSRemoveRedPoint>(m);
                        break;
                    case OpDefine.SCRemoveRedPoint:
                        result = ProtoBuf.Serializer.Deserialize<SCRemoveRedPoint>(m);
                        break;
#endregion
#region 消息协议号 2000
                    case OpDefine.CSSceneEnter:
                        result = ProtoBuf.Serializer.Deserialize<CSSceneEnter>(m);
                        break;
                    case OpDefine.SCSceneEnter:
                        result = ProtoBuf.Serializer.Deserialize<SCSceneEnter>(m);
                        break;
                    case OpDefine.CSSceneSync:
                        result = ProtoBuf.Serializer.Deserialize<CSSceneSync>(m);
                        break;
                    case OpDefine.SCSceneSync:
                        result = ProtoBuf.Serializer.Deserialize<SCSceneSync>(m);
                        break;
                    case OpDefine.CSHeartBeat:
                        result = ProtoBuf.Serializer.Deserialize<CSHeartBeat>(m);
                        break;
                    case OpDefine.SCHeartBeat:
                        result = ProtoBuf.Serializer.Deserialize<SCHeartBeat>(m);
                        break;
                    case OpDefine.SCSceneObjectAppear:
                        result = ProtoBuf.Serializer.Deserialize<SCSceneObjectAppear>(m);
                        break;
                    case OpDefine.SCSceneObjectDisappear:
                        result = ProtoBuf.Serializer.Deserialize<SCSceneObjectDisappear>(m);
                        break;
                    case OpDefine.CSSceneObjectQuery:
                        result = ProtoBuf.Serializer.Deserialize<CSSceneObjectQuery>(m);
                        break;
                    case OpDefine.SCSceneObjectMove:
                        result = ProtoBuf.Serializer.Deserialize<SCSceneObjectMove>(m);
                        break;
                    case OpDefine.SCSceneObjectMoveStop:
                        result = ProtoBuf.Serializer.Deserialize<SCSceneObjectMoveStop>(m);
                        break;
                    case OpDefine.SCSceneObjectNeedUpdate:
                        result = ProtoBuf.Serializer.Deserialize<SCSceneObjectNeedUpdate>(m);
                        break;
                    case OpDefine.CSSceneOperateMove:
                        result = ProtoBuf.Serializer.Deserialize<CSSceneOperateMove>(m);
                        break;
                    case OpDefine.CSSceneOperateMoveStop:
                        result = ProtoBuf.Serializer.Deserialize<CSSceneOperateMoveStop>(m);
                        break;
                    case OpDefine.CSScenePreEnter:
                        result = ProtoBuf.Serializer.Deserialize<CSScenePreEnter>(m);
                        break;
                    case OpDefine.SCScenePreEnter:
                        result = ProtoBuf.Serializer.Deserialize<SCScenePreEnter>(m);
                        break;
                    case OpDefine.CSTransferLine:
                        result = ProtoBuf.Serializer.Deserialize<CSTransferLine>(m);
                        break;
                    case OpDefine.SCTransferLine:
                        result = ProtoBuf.Serializer.Deserialize<SCTransferLine>(m);
                        break;
                    case OpDefine.CSTransferScene:
                        result = ProtoBuf.Serializer.Deserialize<CSTransferScene>(m);
                        break;
                    case OpDefine.SCTransferScene:
                        result = ProtoBuf.Serializer.Deserialize<SCTransferScene>(m);
                        break;
                    case OpDefine.SSQuerySceneIdReq:
                        result = ProtoBuf.Serializer.Deserialize<SSQuerySceneIdReq>(m);
                        break;
                    case OpDefine.SSQuerySceneIdRes:
                        result = ProtoBuf.Serializer.Deserialize<SSQuerySceneIdRes>(m);
                        break;
                    case OpDefine.SSTransferSceneReq:
                        result = ProtoBuf.Serializer.Deserialize<SSTransferSceneReq>(m);
                        break;
                    case OpDefine.SSTransferSceneRes:
                        result = ProtoBuf.Serializer.Deserialize<SSTransferSceneRes>(m);
                        break;
                    case OpDefine.SCSceneObjectSelfMove:
                        result = ProtoBuf.Serializer.Deserialize<SCSceneObjectSelfMove>(m);
                        break;
                    case OpDefine.CSSceneTransferStart:
                        result = ProtoBuf.Serializer.Deserialize<CSSceneTransferStart>(m);
                        break;
                    case OpDefine.SCSceneTransferStart:
                        result = ProtoBuf.Serializer.Deserialize<SCSceneTransferStart>(m);
                        break;
                    case OpDefine.CSTransferPoint:
                        result = ProtoBuf.Serializer.Deserialize<CSTransferPoint>(m);
                        break;
                    case OpDefine.SCTransferPoint:
                        result = ProtoBuf.Serializer.Deserialize<SCTransferPoint>(m);
                        break;
                    case OpDefine.CSSceneTeamMove:
                        result = ProtoBuf.Serializer.Deserialize<CSSceneTeamMove>(m);
                        break;
                    case OpDefine.CSQueryLineInfo:
                        result = ProtoBuf.Serializer.Deserialize<CSQueryLineInfo>(m);
                        break;
                    case OpDefine.SCQueryLineInfo:
                        result = ProtoBuf.Serializer.Deserialize<SCQueryLineInfo>(m);
                        break;
                    case OpDefine.SCCountDownStart:
                        result = ProtoBuf.Serializer.Deserialize<SCCountDownStart>(m);
                        break;
                    case OpDefine.SCCountDownEnd:
                        result = ProtoBuf.Serializer.Deserialize<SCCountDownEnd>(m);
                        break;
                    case OpDefine.SSTransferSceneLine:
                        result = ProtoBuf.Serializer.Deserialize<SSTransferSceneLine>(m);
                        break;
                    case OpDefine.SCTransferSceneLine:
                        result = ProtoBuf.Serializer.Deserialize<SCTransferSceneLine>(m);
                        break;
                    case OpDefine.SCSceneObjectStateChange:
                        result = ProtoBuf.Serializer.Deserialize<SCSceneObjectStateChange>(m);
                        break;
                    case OpDefine.CSFront:
                        result = ProtoBuf.Serializer.Deserialize<CSFront>(m);
                        break;
#endregion
#region 消息协议号 1400-1450
                    case OpDefine.CSSDKRecharge:
                        result = ProtoBuf.Serializer.Deserialize<CSSDKRecharge>(m);
                        break;
                    case OpDefine.SCSDKRecharge:
                        result = ProtoBuf.Serializer.Deserialize<SCSDKRecharge>(m);
                        break;
                    case OpDefine.CSPaymentShopList:
                        result = ProtoBuf.Serializer.Deserialize<CSPaymentShopList>(m);
                        break;
                    case OpDefine.SCPaymentShopList:
                        result = ProtoBuf.Serializer.Deserialize<SCPaymentShopList>(m);
                        break;
                    case OpDefine.CSGetMonthCardReward:
                        result = ProtoBuf.Serializer.Deserialize<CSGetMonthCardReward>(m);
                        break;
                    case OpDefine.SCGetMonthCardReward:
                        result = ProtoBuf.Serializer.Deserialize<SCGetMonthCardReward>(m);
                        break;
                    case OpDefine.CSGetMonthCardActivity:
                        result = ProtoBuf.Serializer.Deserialize<CSGetMonthCardActivity>(m);
                        break;
                    case OpDefine.SCGetMonthCardActivity:
                        result = ProtoBuf.Serializer.Deserialize<SCGetMonthCardActivity>(m);
                        break;
                    case OpDefine.SSMonthCardDayUpdateTask:
                        result = ProtoBuf.Serializer.Deserialize<SSMonthCardDayUpdateTask>(m);
                        break;
                    case OpDefine.CSReceiveFirstRechargeReward:
                        result = ProtoBuf.Serializer.Deserialize<CSReceiveFirstRechargeReward>(m);
                        break;
                    case OpDefine.SCReceiveFirstRechargeReward:
                        result = ProtoBuf.Serializer.Deserialize<SCReceiveFirstRechargeReward>(m);
                        break;
                    case OpDefine.SCRefreshFirstRechargeState:
                        result = ProtoBuf.Serializer.Deserialize<SCRefreshFirstRechargeState>(m);
                        break;
                    case OpDefine.SCPayRechargeSuccess:
                        result = ProtoBuf.Serializer.Deserialize<SCPayRechargeSuccess>(m);
                        break;
                    case OpDefine.CSAccumulativeRecharge:
                        result = ProtoBuf.Serializer.Deserialize<CSAccumulativeRecharge>(m);
                        break;
                    case OpDefine.SCAccumulativeRecharge:
                        result = ProtoBuf.Serializer.Deserialize<SCAccumulativeRecharge>(m);
                        break;
                    case OpDefine.CSGetAccumulativeReward:
                        result = ProtoBuf.Serializer.Deserialize<CSGetAccumulativeReward>(m);
                        break;
                    case OpDefine.SCGetAccumulativeReward:
                        result = ProtoBuf.Serializer.Deserialize<SCGetAccumulativeReward>(m);
                        break;
                    case OpDefine.CSGetVipLevel:
                        result = ProtoBuf.Serializer.Deserialize<CSGetVipLevel>(m);
                        break;
                    case OpDefine.SCGetVipLevel:
                        result = ProtoBuf.Serializer.Deserialize<SCGetVipLevel>(m);
                        break;
                    case OpDefine.CSGetSpecialMonthCardActivity:
                        result = ProtoBuf.Serializer.Deserialize<CSGetSpecialMonthCardActivity>(m);
                        break;
                    case OpDefine.SCGetSpecialMonthCardActivity:
                        result = ProtoBuf.Serializer.Deserialize<SCGetSpecialMonthCardActivity>(m);
                        break;
#endregion
#region 消息协议号 3501
                    case OpDefine.CSGetShopItemList:
                        result = ProtoBuf.Serializer.Deserialize<CSGetShopItemList>(m);
                        break;
                    case OpDefine.SCGetShopItemList:
                        result = ProtoBuf.Serializer.Deserialize<SCGetShopItemList>(m);
                        break;
                    case OpDefine.CSBuyItem:
                        result = ProtoBuf.Serializer.Deserialize<CSBuyItem>(m);
                        break;
                    case OpDefine.SCBuyItem:
                        result = ProtoBuf.Serializer.Deserialize<SCBuyItem>(m);
                        break;
                    case OpDefine.CSGetLimitList:
                        result = ProtoBuf.Serializer.Deserialize<CSGetLimitList>(m);
                        break;
                    case OpDefine.SCGetLimitList:
                        result = ProtoBuf.Serializer.Deserialize<SCGetLimitList>(m);
                        break;
                    case OpDefine.CSSendGift:
                        result = ProtoBuf.Serializer.Deserialize<CSSendGift>(m);
                        break;
                    case OpDefine.SCSendGift:
                        result = ProtoBuf.Serializer.Deserialize<SCSendGift>(m);
                        break;
                    case OpDefine.CSGetDiamondLimit:
                        result = ProtoBuf.Serializer.Deserialize<CSGetDiamondLimit>(m);
                        break;
                    case OpDefine.SCGetDiamondLimit:
                        result = ProtoBuf.Serializer.Deserialize<SCGetDiamondLimit>(m);
                        break;
                    case OpDefine.CSGetGiftFriend:
                        result = ProtoBuf.Serializer.Deserialize<CSGetGiftFriend>(m);
                        break;
                    case OpDefine.SCGetGiftFriend:
                        result = ProtoBuf.Serializer.Deserialize<SCGetGiftFriend>(m);
                        break;
                    case OpDefine.CSGetShopMallStruct:
                        result = ProtoBuf.Serializer.Deserialize<CSGetShopMallStruct>(m);
                        break;
                    case OpDefine.SCGetShopMallStruct:
                        result = ProtoBuf.Serializer.Deserialize<SCGetShopMallStruct>(m);
                        break;
                    case OpDefine.CSQueryShopGoodLocation:
                        result = ProtoBuf.Serializer.Deserialize<CSQueryShopGoodLocation>(m);
                        break;
                    case OpDefine.SCQueryShopGoodLocation:
                        result = ProtoBuf.Serializer.Deserialize<SCQueryShopGoodLocation>(m);
                        break;
                    case OpDefine.CSRefreshShop:
                        result = ProtoBuf.Serializer.Deserialize<CSRefreshShop>(m);
                        break;
#endregion
#region Default12 12000
                    case OpDefine.CSGetMarketList:
                        result = ProtoBuf.Serializer.Deserialize<CSGetMarketList>(m);
                        break;
                    case OpDefine.SCGetMarketList:
                        result = ProtoBuf.Serializer.Deserialize<SCGetMarketList>(m);
                        break;
                    case OpDefine.CSBuyMarketItem:
                        result = ProtoBuf.Serializer.Deserialize<CSBuyMarketItem>(m);
                        break;
                    case OpDefine.SCBuyMarketItem:
                        result = ProtoBuf.Serializer.Deserialize<SCBuyMarketItem>(m);
                        break;
                    case OpDefine.CSSellMarketItem:
                        result = ProtoBuf.Serializer.Deserialize<CSSellMarketItem>(m);
                        break;
                    case OpDefine.SCSellMarketItem:
                        result = ProtoBuf.Serializer.Deserialize<SCSellMarketItem>(m);
                        break;
#endregion
#region 任务模块 11401-11499
                    case OpDefine.CSGetTaskList:
                        result = ProtoBuf.Serializer.Deserialize<CSGetTaskList>(m);
                        break;
                    case OpDefine.SCGetTaskList:
                        result = ProtoBuf.Serializer.Deserialize<SCGetTaskList>(m);
                        break;
                    case OpDefine.CSFinishTaskTarget:
                        result = ProtoBuf.Serializer.Deserialize<CSFinishTaskTarget>(m);
                        break;
                    case OpDefine.SCFinishTaskTarget:
                        result = ProtoBuf.Serializer.Deserialize<SCFinishTaskTarget>(m);
                        break;
                    case OpDefine.CSTaskInfoUpdate:
                        result = ProtoBuf.Serializer.Deserialize<CSTaskInfoUpdate>(m);
                        break;
                    case OpDefine.SCTaskInfoUpdate:
                        result = ProtoBuf.Serializer.Deserialize<SCTaskInfoUpdate>(m);
                        break;
                    case OpDefine.CSTaskChapterInfo:
                        result = ProtoBuf.Serializer.Deserialize<CSTaskChapterInfo>(m);
                        break;
                    case OpDefine.SCTaskChapterInfo:
                        result = ProtoBuf.Serializer.Deserialize<SCTaskChapterInfo>(m);
                        break;
#endregion
#region 消息协议号 11301
                    case OpDefine.CSTeamList:
                        result = ProtoBuf.Serializer.Deserialize<CSTeamList>(m);
                        break;
                    case OpDefine.SCTeamList:
                        result = ProtoBuf.Serializer.Deserialize<SCTeamList>(m);
                        break;
                    case OpDefine.CSCreateTeam:
                        result = ProtoBuf.Serializer.Deserialize<CSCreateTeam>(m);
                        break;
                    case OpDefine.SCCreateTeam:
                        result = ProtoBuf.Serializer.Deserialize<SCCreateTeam>(m);
                        break;
                    case OpDefine.CSTeamInfo:
                        result = ProtoBuf.Serializer.Deserialize<CSTeamInfo>(m);
                        break;
                    case OpDefine.SCTeamInfo:
                        result = ProtoBuf.Serializer.Deserialize<SCTeamInfo>(m);
                        break;
                    case OpDefine.CSAutoMatch:
                        result = ProtoBuf.Serializer.Deserialize<CSAutoMatch>(m);
                        break;
                    case OpDefine.SCAutoMatch:
                        result = ProtoBuf.Serializer.Deserialize<SCAutoMatch>(m);
                        break;
                    case OpDefine.SCAutoMatchResult:
                        result = ProtoBuf.Serializer.Deserialize<SCAutoMatchResult>(m);
                        break;
                    case OpDefine.CSChangeTeamTarget:
                        result = ProtoBuf.Serializer.Deserialize<CSChangeTeamTarget>(m);
                        break;
                    case OpDefine.SCChangeTeamTarget:
                        result = ProtoBuf.Serializer.Deserialize<SCChangeTeamTarget>(m);
                        break;
                    case OpDefine.CSDissolveTeam:
                        result = ProtoBuf.Serializer.Deserialize<CSDissolveTeam>(m);
                        break;
                    case OpDefine.SCDissolveTeam:
                        result = ProtoBuf.Serializer.Deserialize<SCDissolveTeam>(m);
                        break;
                    case OpDefine.CSApplyTeam:
                        result = ProtoBuf.Serializer.Deserialize<CSApplyTeam>(m);
                        break;
                    case OpDefine.SCApplyTeam:
                        result = ProtoBuf.Serializer.Deserialize<SCApplyTeam>(m);
                        break;
                    case OpDefine.CSApplyTeamConfirm:
                        result = ProtoBuf.Serializer.Deserialize<CSApplyTeamConfirm>(m);
                        break;
                    case OpDefine.SCApplyTeamConfirm:
                        result = ProtoBuf.Serializer.Deserialize<SCApplyTeamConfirm>(m);
                        break;
                    case OpDefine.CSRemoveTeamMember:
                        result = ProtoBuf.Serializer.Deserialize<CSRemoveTeamMember>(m);
                        break;
                    case OpDefine.SCRemoveTeamMember:
                        result = ProtoBuf.Serializer.Deserialize<SCRemoveTeamMember>(m);
                        break;
                    case OpDefine.CSLeaveTeam:
                        result = ProtoBuf.Serializer.Deserialize<CSLeaveTeam>(m);
                        break;
                    case OpDefine.SCLeaveTeam:
                        result = ProtoBuf.Serializer.Deserialize<SCLeaveTeam>(m);
                        break;
                    case OpDefine.CSChangeTeamLeader:
                        result = ProtoBuf.Serializer.Deserialize<CSChangeTeamLeader>(m);
                        break;
                    case OpDefine.SCChangeTeamLeader:
                        result = ProtoBuf.Serializer.Deserialize<SCChangeTeamLeader>(m);
                        break;
                    case OpDefine.CSApplyTeamLeader:
                        result = ProtoBuf.Serializer.Deserialize<CSApplyTeamLeader>(m);
                        break;
                    case OpDefine.SCApplyTeamLeader:
                        result = ProtoBuf.Serializer.Deserialize<SCApplyTeamLeader>(m);
                        break;
                    case OpDefine.CSReplyTeamLeader:
                        result = ProtoBuf.Serializer.Deserialize<CSReplyTeamLeader>(m);
                        break;
                    case OpDefine.SCReplyTeamLeader:
                        result = ProtoBuf.Serializer.Deserialize<SCReplyTeamLeader>(m);
                        break;
                    case OpDefine.SCReplyTeamLeaderToApplyer:
                        result = ProtoBuf.Serializer.Deserialize<SCReplyTeamLeaderToApplyer>(m);
                        break;
                    case OpDefine.CSSummonFollowing:
                        result = ProtoBuf.Serializer.Deserialize<CSSummonFollowing>(m);
                        break;
                    case OpDefine.SCSummonFollowing:
                        result = ProtoBuf.Serializer.Deserialize<SCSummonFollowing>(m);
                        break;
                    case OpDefine.CSFollowingTeam:
                        result = ProtoBuf.Serializer.Deserialize<CSFollowingTeam>(m);
                        break;
                    case OpDefine.SCFollowingTeam:
                        result = ProtoBuf.Serializer.Deserialize<SCFollowingTeam>(m);
                        break;
                    case OpDefine.CSInviteTeamMember:
                        result = ProtoBuf.Serializer.Deserialize<CSInviteTeamMember>(m);
                        break;
                    case OpDefine.SCInviteTeamMember:
                        result = ProtoBuf.Serializer.Deserialize<SCInviteTeamMember>(m);
                        break;
                    case OpDefine.SCTeamMemberInviteOther:
                        result = ProtoBuf.Serializer.Deserialize<SCTeamMemberInviteOther>(m);
                        break;
                    case OpDefine.CSInviteConfirm:
                        result = ProtoBuf.Serializer.Deserialize<CSInviteConfirm>(m);
                        break;
                    case OpDefine.SCInviteConfirm:
                        result = ProtoBuf.Serializer.Deserialize<SCInviteConfirm>(m);
                        break;
                    case OpDefine.SCReceiveTeamInvited:
                        result = ProtoBuf.Serializer.Deserialize<SCReceiveTeamInvited>(m);
                        break;
                    case OpDefine.CSReplyInviteTeam:
                        result = ProtoBuf.Serializer.Deserialize<CSReplyInviteTeam>(m);
                        break;
                    case OpDefine.SCReplyInviteTeam:
                        result = ProtoBuf.Serializer.Deserialize<SCReplyInviteTeam>(m);
                        break;
                    case OpDefine.CSMatchNum:
                        result = ProtoBuf.Serializer.Deserialize<CSMatchNum>(m);
                        break;
                    case OpDefine.SCMatchNum:
                        result = ProtoBuf.Serializer.Deserialize<SCMatchNum>(m);
                        break;
                    case OpDefine.CSCheckNearPlayers:
                        result = ProtoBuf.Serializer.Deserialize<CSCheckNearPlayers>(m);
                        break;
                    case OpDefine.SCCheckNearPlayers:
                        result = ProtoBuf.Serializer.Deserialize<SCCheckNearPlayers>(m);
                        break;
                    case OpDefine.SCReplyTeamLeaderToAll:
                        result = ProtoBuf.Serializer.Deserialize<SCReplyTeamLeaderToAll>(m);
                        break;
                    case OpDefine.SCMemberApplyLeader:
                        result = ProtoBuf.Serializer.Deserialize<SCMemberApplyLeader>(m);
                        break;
                    case OpDefine.CSChangeTeamHero:
                        result = ProtoBuf.Serializer.Deserialize<CSChangeTeamHero>(m);
                        break;
                    case OpDefine.SCChangeTeamHero:
                        result = ProtoBuf.Serializer.Deserialize<SCChangeTeamHero>(m);
                        break;
                    case OpDefine.CSChangeTeamHeroEquipment:
                        result = ProtoBuf.Serializer.Deserialize<CSChangeTeamHeroEquipment>(m);
                        break;
                    case OpDefine.SCChangeTeamHeroEquipment:
                        result = ProtoBuf.Serializer.Deserialize<SCChangeTeamHeroEquipment>(m);
                        break;
                    case OpDefine.CSUpdateTeamFormation:
                        result = ProtoBuf.Serializer.Deserialize<CSUpdateTeamFormation>(m);
                        break;
                    case OpDefine.SCUpdateTeamFormation:
                        result = ProtoBuf.Serializer.Deserialize<SCUpdateTeamFormation>(m);
                        break;
                    case OpDefine.CSClearTeamApplys:
                        result = ProtoBuf.Serializer.Deserialize<CSClearTeamApplys>(m);
                        break;
                    case OpDefine.SCClearTeamApplys:
                        result = ProtoBuf.Serializer.Deserialize<SCClearTeamApplys>(m);
                        break;
                    case OpDefine.CSTeamReadyVote:
                        result = ProtoBuf.Serializer.Deserialize<CSTeamReadyVote>(m);
                        break;
                    case OpDefine.SCTeamReadyVote:
                        result = ProtoBuf.Serializer.Deserialize<SCTeamReadyVote>(m);
                        break;
                    case OpDefine.CSTeamResReadyVote:
                        result = ProtoBuf.Serializer.Deserialize<CSTeamResReadyVote>(m);
                        break;
                    case OpDefine.SCTeamResReadyVote:
                        result = ProtoBuf.Serializer.Deserialize<SCTeamResReadyVote>(m);
                        break;
                    case OpDefine.CSTeamStopReadyVote:
                        result = ProtoBuf.Serializer.Deserialize<CSTeamStopReadyVote>(m);
                        break;
                    case OpDefine.SCTeamStopReadyVote:
                        result = ProtoBuf.Serializer.Deserialize<SCTeamStopReadyVote>(m);
                        break;
                    case OpDefine.CSGetHeroTeamFight:
                        result = ProtoBuf.Serializer.Deserialize<CSGetHeroTeamFight>(m);
                        break;
                    case OpDefine.SCGetHeroTeamFight:
                        result = ProtoBuf.Serializer.Deserialize<SCGetHeroTeamFight>(m);
                        break;
#endregion
#region 成就模块 11600-11649
                    case OpDefine.CSGetAchievementInfo:
                        result = ProtoBuf.Serializer.Deserialize<CSGetAchievementInfo>(m);
                        break;
                    case OpDefine.SCGetAchievementInfo:
                        result = ProtoBuf.Serializer.Deserialize<SCGetAchievementInfo>(m);
                        break;
                    case OpDefine.CSGetAchievementReward:
                        result = ProtoBuf.Serializer.Deserialize<CSGetAchievementReward>(m);
                        break;
                    case OpDefine.SCGetAchievementReward:
                        result = ProtoBuf.Serializer.Deserialize<SCGetAchievementReward>(m);
                        break;
                    case OpDefine.CSGetAchievementById:
                        result = ProtoBuf.Serializer.Deserialize<CSGetAchievementById>(m);
                        break;
                    case OpDefine.SCGetAchievementById:
                        result = ProtoBuf.Serializer.Deserialize<SCGetAchievementById>(m);
                        break;
                    case OpDefine.CSGetAchievementLevelReward:
                        result = ProtoBuf.Serializer.Deserialize<CSGetAchievementLevelReward>(m);
                        break;
                    case OpDefine.SCGetAchievementLevelReward:
                        result = ProtoBuf.Serializer.Deserialize<SCGetAchievementLevelReward>(m);
                        break;
#endregion
#region 签到 15701-15800
                    case OpDefine.CSGetAllActivityInfo:
                        result = ProtoBuf.Serializer.Deserialize<CSGetAllActivityInfo>(m);
                        break;
                    case OpDefine.SCGetAllActivityInfo:
                        result = ProtoBuf.Serializer.Deserialize<SCGetAllActivityInfo>(m);
                        break;
                    case OpDefine.CSGetActivityDetail:
                        result = ProtoBuf.Serializer.Deserialize<CSGetActivityDetail>(m);
                        break;
                    case OpDefine.SCGetActivityDetail:
                        result = ProtoBuf.Serializer.Deserialize<SCGetActivityDetail>(m);
                        break;
                    case OpDefine.CSGetActivityAward:
                        result = ProtoBuf.Serializer.Deserialize<CSGetActivityAward>(m);
                        break;
                    case OpDefine.SCGetActivityAward:
                        result = ProtoBuf.Serializer.Deserialize<SCGetActivityAward>(m);
                        break;
                    case OpDefine.SSOnlineMorrowActivityOperate:
                        result = ProtoBuf.Serializer.Deserialize<SSOnlineMorrowActivityOperate>(m);
                        break;
                    case OpDefine.CSGetRankActivityShowInfo:
                        result = ProtoBuf.Serializer.Deserialize<CSGetRankActivityShowInfo>(m);
                        break;
                    case OpDefine.SCGetRankActivityShowInfo:
                        result = ProtoBuf.Serializer.Deserialize<SCGetRankActivityShowInfo>(m);
                        break;
                    case OpDefine.SSNoticeHumanUpdateActivity:
                        result = ProtoBuf.Serializer.Deserialize<SSNoticeHumanUpdateActivity>(m);
                        break;
                    case OpDefine.SCPushFestivalDropActivity:
                        result = ProtoBuf.Serializer.Deserialize<SCPushFestivalDropActivity>(m);
                        break;
                    case OpDefine.SCPushDoubleActivity:
                        result = ProtoBuf.Serializer.Deserialize<SCPushDoubleActivity>(m);
                        break;
                    case OpDefine.CSGetActivityDailyLoginInfo:
                        result = ProtoBuf.Serializer.Deserialize<CSGetActivityDailyLoginInfo>(m);
                        break;
                    case OpDefine.SCGetActivityDailyLoginInfo:
                        result = ProtoBuf.Serializer.Deserialize<SCGetActivityDailyLoginInfo>(m);
                        break;
                    case OpDefine.CSGetActivityDailyLoginReward:
                        result = ProtoBuf.Serializer.Deserialize<CSGetActivityDailyLoginReward>(m);
                        break;
                    case OpDefine.SCGetActivityDailyLoginReward:
                        result = ProtoBuf.Serializer.Deserialize<SCGetActivityDailyLoginReward>(m);
                        break;
                    case OpDefine.CSGetTimeLimitAdventureInfo:
                        result = ProtoBuf.Serializer.Deserialize<CSGetTimeLimitAdventureInfo>(m);
                        break;
                    case OpDefine.SCGetTimeLimitAdventureInfo:
                        result = ProtoBuf.Serializer.Deserialize<SCGetTimeLimitAdventureInfo>(m);
                        break;
                    case OpDefine.CSGetTimeLimitDominateSea:
                        result = ProtoBuf.Serializer.Deserialize<CSGetTimeLimitDominateSea>(m);
                        break;
                    case OpDefine.SCGetTimeLimitDominateSea:
                        result = ProtoBuf.Serializer.Deserialize<SCGetTimeLimitDominateSea>(m);
                        break;
                    case OpDefine.CSResetDominateSea:
                        result = ProtoBuf.Serializer.Deserialize<CSResetDominateSea>(m);
                        break;
                    case OpDefine.SCResetDominateSea:
                        result = ProtoBuf.Serializer.Deserialize<SCResetDominateSea>(m);
                        break;
                    case OpDefine.CSBuyDominateReset:
                        result = ProtoBuf.Serializer.Deserialize<CSBuyDominateReset>(m);
                        break;
                    case OpDefine.SCBuyDominateReset:
                        result = ProtoBuf.Serializer.Deserialize<SCBuyDominateReset>(m);
                        break;
                    case OpDefine.CSUpdateDominateFormation:
                        result = ProtoBuf.Serializer.Deserialize<CSUpdateDominateFormation>(m);
                        break;
                    case OpDefine.SCUpdateDominateFormation:
                        result = ProtoBuf.Serializer.Deserialize<SCUpdateDominateFormation>(m);
                        break;
                    case OpDefine.CSDominateReady:
                        result = ProtoBuf.Serializer.Deserialize<CSDominateReady>(m);
                        break;
                    case OpDefine.SCDominateReady:
                        result = ProtoBuf.Serializer.Deserialize<SCDominateReady>(m);
                        break;
                    case OpDefine.CSStartDominateFight:
                        result = ProtoBuf.Serializer.Deserialize<CSStartDominateFight>(m);
                        break;
                    case OpDefine.SCStartDominateFight:
                        result = ProtoBuf.Serializer.Deserialize<SCStartDominateFight>(m);
                        break;
                    case OpDefine.CSRefreshRoadToStrong:
                        result = ProtoBuf.Serializer.Deserialize<CSRefreshRoadToStrong>(m);
                        break;
                    case OpDefine.SCRefreshRoadToStrong:
                        result = ProtoBuf.Serializer.Deserialize<SCRefreshRoadToStrong>(m);
                        break;
                    case OpDefine.CSAcceptAdventureTask:
                        result = ProtoBuf.Serializer.Deserialize<CSAcceptAdventureTask>(m);
                        break;
                    case OpDefine.SCAcceptAdventureTask:
                        result = ProtoBuf.Serializer.Deserialize<SCAcceptAdventureTask>(m);
                        break;
                    case OpDefine.CSDominateChangeHero:
                        result = ProtoBuf.Serializer.Deserialize<CSDominateChangeHero>(m);
                        break;
                    case OpDefine.SCDominateChangeHero:
                        result = ProtoBuf.Serializer.Deserialize<SCDominateChangeHero>(m);
                        break;
                    case OpDefine.SCDominateLevelReward:
                        result = ProtoBuf.Serializer.Deserialize<SCDominateLevelReward>(m);
                        break;
                    case OpDefine.CSLimitChallengeInfo:
                        result = ProtoBuf.Serializer.Deserialize<CSLimitChallengeInfo>(m);
                        break;
                    case OpDefine.SCLimitChallengeInfo:
                        result = ProtoBuf.Serializer.Deserialize<SCLimitChallengeInfo>(m);
                        break;
                    case OpDefine.CSLimitChallengeFight:
                        result = ProtoBuf.Serializer.Deserialize<CSLimitChallengeFight>(m);
                        break;
                    case OpDefine.SCLimitChallengeFight:
                        result = ProtoBuf.Serializer.Deserialize<SCLimitChallengeFight>(m);
                        break;
                    case OpDefine.SCLimitChallengeLevelReward:
                        result = ProtoBuf.Serializer.Deserialize<SCLimitChallengeLevelReward>(m);
                        break;
                    case OpDefine.CSResetLimitChallenge:
                        result = ProtoBuf.Serializer.Deserialize<CSResetLimitChallenge>(m);
                        break;
                    case OpDefine.SCResetLimitChallenge:
                        result = ProtoBuf.Serializer.Deserialize<SCResetLimitChallenge>(m);
                        break;
                    case OpDefine.CSTimeLimitAdventureChapter:
                        result = ProtoBuf.Serializer.Deserialize<CSTimeLimitAdventureChapter>(m);
                        break;
                    case OpDefine.SCTimeLimitAdventureChapter:
                        result = ProtoBuf.Serializer.Deserialize<SCTimeLimitAdventureChapter>(m);
                        break;
                    case OpDefine.CSGetTimelimitReward:
                        result = ProtoBuf.Serializer.Deserialize<CSGetTimelimitReward>(m);
                        break;
                    case OpDefine.SCGetTimelimitReward:
                        result = ProtoBuf.Serializer.Deserialize<SCGetTimelimitReward>(m);
                        break;
                    case OpDefine.CSRequestNauticaladventure:
                        result = ProtoBuf.Serializer.Deserialize<CSRequestNauticaladventure>(m);
                        break;
                    case OpDefine.SCRequestNauticaladventure:
                        result = ProtoBuf.Serializer.Deserialize<SCRequestNauticaladventure>(m);
                        break;
#endregion
#region 飘流瓶  79001 - 79100
                    case OpDefine.CSGetActivityDriftBottleData:
                        result = ProtoBuf.Serializer.Deserialize<CSGetActivityDriftBottleData>(m);
                        break;
                    case OpDefine.SCGetActivityDriftBottleData:
                        result = ProtoBuf.Serializer.Deserialize<SCGetActivityDriftBottleData>(m);
                        break;
                    case OpDefine.CSDriftBottlePrey:
                        result = ProtoBuf.Serializer.Deserialize<CSDriftBottlePrey>(m);
                        break;
                    case OpDefine.SCDriftBottlePrey:
                        result = ProtoBuf.Serializer.Deserialize<SCDriftBottlePrey>(m);
                        break;
                    case OpDefine.CSDriftBottlePreyResultRequest:
                        result = ProtoBuf.Serializer.Deserialize<CSDriftBottlePreyResultRequest>(m);
                        break;
                    case OpDefine.SCDriftBottlePreyResultRequest:
                        result = ProtoBuf.Serializer.Deserialize<SCDriftBottlePreyResultRequest>(m);
                        break;
                    case OpDefine.CSDriftBottlePreyResultShare:
                        result = ProtoBuf.Serializer.Deserialize<CSDriftBottlePreyResultShare>(m);
                        break;
                    case OpDefine.SCDriftBottlePreResultShare:
                        result = ProtoBuf.Serializer.Deserialize<SCDriftBottlePreResultShare>(m);
                        break;
                    case OpDefine.CSDriftBottleShareList:
                        result = ProtoBuf.Serializer.Deserialize<CSDriftBottleShareList>(m);
                        break;
                    case OpDefine.SCDriftBottleShareList:
                        result = ProtoBuf.Serializer.Deserialize<SCDriftBottleShareList>(m);
                        break;
                    case OpDefine.CSDriftBottleShareDeal:
                        result = ProtoBuf.Serializer.Deserialize<CSDriftBottleShareDeal>(m);
                        break;
                    case OpDefine.SCDriftBottleShareDeal:
                        result = ProtoBuf.Serializer.Deserialize<SCDriftBottleShareDeal>(m);
                        break;
                    case OpDefine.CSDriftBottleShareReward:
                        result = ProtoBuf.Serializer.Deserialize<CSDriftBottleShareReward>(m);
                        break;
                    case OpDefine.SCDriftBottleShareReward:
                        result = ProtoBuf.Serializer.Deserialize<SCDriftBottleShareReward>(m);
                        break;
                    case OpDefine.CSDriftBottleShareHistory:
                        result = ProtoBuf.Serializer.Deserialize<CSDriftBottleShareHistory>(m);
                        break;
                    case OpDefine.SCDriftBottleShareHistory:
                        result = ProtoBuf.Serializer.Deserialize<SCDriftBottleShareHistory>(m);
                        break;
                    case OpDefine.CSDriftBottleThankShare:
                        result = ProtoBuf.Serializer.Deserialize<CSDriftBottleThankShare>(m);
                        break;
                    case OpDefine.SCDriftBottleThankShare:
                        result = ProtoBuf.Serializer.Deserialize<SCDriftBottleThankShare>(m);
                        break;
#endregion
#region 礼包活动 78101-78200
                    case OpDefine.CSGetGiftActivityInfo:
                        result = ProtoBuf.Serializer.Deserialize<CSGetGiftActivityInfo>(m);
                        break;
                    case OpDefine.SCGetGiftActivityInfo:
                        result = ProtoBuf.Serializer.Deserialize<SCGetGiftActivityInfo>(m);
                        break;
                    case OpDefine.CSBuyGiftActivity:
                        result = ProtoBuf.Serializer.Deserialize<CSBuyGiftActivity>(m);
                        break;
                    case OpDefine.SCBuyGiftActivity:
                        result = ProtoBuf.Serializer.Deserialize<SCBuyGiftActivity>(m);
                        break;
                    case OpDefine.SCTriggerGiftAppear:
                        result = ProtoBuf.Serializer.Deserialize<SCTriggerGiftAppear>(m);
                        break;
                    case OpDefine.CSBindTelephoneInfo:
                        result = ProtoBuf.Serializer.Deserialize<CSBindTelephoneInfo>(m);
                        break;
                    case OpDefine.SCBindTelephoneInfo:
                        result = ProtoBuf.Serializer.Deserialize<SCBindTelephoneInfo>(m);
                        break;
                    case OpDefine.CSGetTelAuthCode:
                        result = ProtoBuf.Serializer.Deserialize<CSGetTelAuthCode>(m);
                        break;
                    case OpDefine.SCGetTelAuthCode:
                        result = ProtoBuf.Serializer.Deserialize<SCGetTelAuthCode>(m);
                        break;
                    case OpDefine.CSBindTelephone:
                        result = ProtoBuf.Serializer.Deserialize<CSBindTelephone>(m);
                        break;
                    case OpDefine.SCBindTelephone:
                        result = ProtoBuf.Serializer.Deserialize<SCBindTelephone>(m);
                        break;
                    case OpDefine.SSBindTelephone:
                        result = ProtoBuf.Serializer.Deserialize<SSBindTelephone>(m);
                        break;
                    case OpDefine.CSBindTelephoneReward:
                        result = ProtoBuf.Serializer.Deserialize<CSBindTelephoneReward>(m);
                        break;
                    case OpDefine.SCBindTelephoneReward:
                        result = ProtoBuf.Serializer.Deserialize<SCBindTelephoneReward>(m);
                        break;
#endregion
#region 消息协议号 22101-22200
                    case OpDefine.SCAdvertisementSyncInfo:
                        result = ProtoBuf.Serializer.Deserialize<SCAdvertisementSyncInfo>(m);
                        break;
#endregion
#region 消息协议号 11700-11799
                    case OpDefine.CSArenaInfo:
                        result = ProtoBuf.Serializer.Deserialize<CSArenaInfo>(m);
                        break;
                    case OpDefine.SCArenaInfo:
                        result = ProtoBuf.Serializer.Deserialize<SCArenaInfo>(m);
                        break;
                    case OpDefine.CSArenaChallenge:
                        result = ProtoBuf.Serializer.Deserialize<CSArenaChallenge>(m);
                        break;
                    case OpDefine.SCArenaChallenge:
                        result = ProtoBuf.Serializer.Deserialize<SCArenaChallenge>(m);
                        break;
                    case OpDefine.CSArenaRefreshChallenge:
                        result = ProtoBuf.Serializer.Deserialize<CSArenaRefreshChallenge>(m);
                        break;
                    case OpDefine.SCArenaRefreshChallenge:
                        result = ProtoBuf.Serializer.Deserialize<SCArenaRefreshChallenge>(m);
                        break;
                    case OpDefine.CSBuyArenaChallenge:
                        result = ProtoBuf.Serializer.Deserialize<CSBuyArenaChallenge>(m);
                        break;
                    case OpDefine.SCBuyArenaChallenge:
                        result = ProtoBuf.Serializer.Deserialize<SCBuyArenaChallenge>(m);
                        break;
                    case OpDefine.CSArenaSweep:
                        result = ProtoBuf.Serializer.Deserialize<CSArenaSweep>(m);
                        break;
                    case OpDefine.SCArenaSweep:
                        result = ProtoBuf.Serializer.Deserialize<SCArenaSweep>(m);
                        break;
                    case OpDefine.CSArenaPlayerFormation:
                        result = ProtoBuf.Serializer.Deserialize<CSArenaPlayerFormation>(m);
                        break;
                    case OpDefine.SCArenaPlayerFormation:
                        result = ProtoBuf.Serializer.Deserialize<SCArenaPlayerFormation>(m);
                        break;
#endregion
#region 自走棋协议号 87801
                    case OpDefine.CSAutoChessInfo:
                        result = ProtoBuf.Serializer.Deserialize<CSAutoChessInfo>(m);
                        break;
                    case OpDefine.SCAutoChessInfo:
                        result = ProtoBuf.Serializer.Deserialize<SCAutoChessInfo>(m);
                        break;
                    case OpDefine.CSAutoChessMatch:
                        result = ProtoBuf.Serializer.Deserialize<CSAutoChessMatch>(m);
                        break;
                    case OpDefine.SCAutoChessMatch:
                        result = ProtoBuf.Serializer.Deserialize<SCAutoChessMatch>(m);
                        break;
                    case OpDefine.SCAutoChessMatchSucess:
                        result = ProtoBuf.Serializer.Deserialize<SCAutoChessMatchSucess>(m);
                        break;
                    case OpDefine.CSCancelAutoChessMatch:
                        result = ProtoBuf.Serializer.Deserialize<CSCancelAutoChessMatch>(m);
                        break;
                    case OpDefine.SCCancelAutoChessMatch:
                        result = ProtoBuf.Serializer.Deserialize<SCCancelAutoChessMatch>(m);
                        break;
                    case OpDefine.SCAutoChessBegin:
                        result = ProtoBuf.Serializer.Deserialize<SCAutoChessBegin>(m);
                        break;
                    case OpDefine.CSAutoChessLoadingProgress:
                        result = ProtoBuf.Serializer.Deserialize<CSAutoChessLoadingProgress>(m);
                        break;
                    case OpDefine.SCAutoChessLoadingProgress:
                        result = ProtoBuf.Serializer.Deserialize<SCAutoChessLoadingProgress>(m);
                        break;
                    case OpDefine.SCAutoChessStateChange:
                        result = ProtoBuf.Serializer.Deserialize<SCAutoChessStateChange>(m);
                        break;
                    case OpDefine.CSAutoChessBugChess:
                        result = ProtoBuf.Serializer.Deserialize<CSAutoChessBugChess>(m);
                        break;
                    case OpDefine.SCAutoChessBugChess:
                        result = ProtoBuf.Serializer.Deserialize<SCAutoChessBugChess>(m);
                        break;
                    case OpDefine.CSAutoChessMoveChess:
                        result = ProtoBuf.Serializer.Deserialize<CSAutoChessMoveChess>(m);
                        break;
                    case OpDefine.SCAutoChessMoveChess:
                        result = ProtoBuf.Serializer.Deserialize<SCAutoChessMoveChess>(m);
                        break;
                    case OpDefine.SCAutoChessRefreshChesses:
                        result = ProtoBuf.Serializer.Deserialize<SCAutoChessRefreshChesses>(m);
                        break;
                    case OpDefine.SCAutoChessMatchRes:
                        result = ProtoBuf.Serializer.Deserialize<SCAutoChessMatchRes>(m);
                        break;
                    case OpDefine.SCAutoChessFightRes:
                        result = ProtoBuf.Serializer.Deserialize<SCAutoChessFightRes>(m);
                        break;
                    case OpDefine.CSAutoChessUpgradeShip:
                        result = ProtoBuf.Serializer.Deserialize<CSAutoChessUpgradeShip>(m);
                        break;
                    case OpDefine.SCAutoChessUpgradeShip:
                        result = ProtoBuf.Serializer.Deserialize<SCAutoChessUpgradeShip>(m);
                        break;
                    case OpDefine.SCAutoChessRefreshShip:
                        result = ProtoBuf.Serializer.Deserialize<SCAutoChessRefreshShip>(m);
                        break;
                    case OpDefine.CSAutoChessGrowthChessStar:
                        result = ProtoBuf.Serializer.Deserialize<CSAutoChessGrowthChessStar>(m);
                        break;
                    case OpDefine.SCAutoChessGrowthChessStar:
                        result = ProtoBuf.Serializer.Deserialize<SCAutoChessGrowthChessStar>(m);
                        break;
                    case OpDefine.CSAutoChessSellChess:
                        result = ProtoBuf.Serializer.Deserialize<CSAutoChessSellChess>(m);
                        break;
                    case OpDefine.SCAutoChessSellChess:
                        result = ProtoBuf.Serializer.Deserialize<SCAutoChessSellChess>(m);
                        break;
                    case OpDefine.CSAutoChessRefreshBuyChesses:
                        result = ProtoBuf.Serializer.Deserialize<CSAutoChessRefreshBuyChesses>(m);
                        break;
                    case OpDefine.SCAutoChessRefreshBuyChesses:
                        result = ProtoBuf.Serializer.Deserialize<SCAutoChessRefreshBuyChesses>(m);
                        break;
                    case OpDefine.SCAutoChessSettlement:
                        result = ProtoBuf.Serializer.Deserialize<SCAutoChessSettlement>(m);
                        break;
                    case OpDefine.CSAutoChessPlayerQuit:
                        result = ProtoBuf.Serializer.Deserialize<CSAutoChessPlayerQuit>(m);
                        break;
                    case OpDefine.SCAutoChessPlayerQuit:
                        result = ProtoBuf.Serializer.Deserialize<SCAutoChessPlayerQuit>(m);
                        break;
                    case OpDefine.CSAutoChessLockShop:
                        result = ProtoBuf.Serializer.Deserialize<CSAutoChessLockShop>(m);
                        break;
                    case OpDefine.SCAutoChessLockShop:
                        result = ProtoBuf.Serializer.Deserialize<SCAutoChessLockShop>(m);
                        break;
                    case OpDefine.SCAutoChessReconnect:
                        result = ProtoBuf.Serializer.Deserialize<SCAutoChessReconnect>(m);
                        break;
                    case OpDefine.CSAutoChessPlayerEnter:
                        result = ProtoBuf.Serializer.Deserialize<CSAutoChessPlayerEnter>(m);
                        break;
                    case OpDefine.SCAutoChessPlayerEnter:
                        result = ProtoBuf.Serializer.Deserialize<SCAutoChessPlayerEnter>(m);
                        break;
                    case OpDefine.CSAutoChessFightFinish:
                        result = ProtoBuf.Serializer.Deserialize<CSAutoChessFightFinish>(m);
                        break;
                    case OpDefine.SCAutoChessGoldIncome:
                        result = ProtoBuf.Serializer.Deserialize<SCAutoChessGoldIncome>(m);
                        break;
                    case OpDefine.CSAutoChessGetReport:
                        result = ProtoBuf.Serializer.Deserialize<CSAutoChessGetReport>(m);
                        break;
                    case OpDefine.SCAutoChessGetReport:
                        result = ProtoBuf.Serializer.Deserialize<SCAutoChessGetReport>(m);
                        break;
                    case OpDefine.CSAutoChessGetFightRecords:
                        result = ProtoBuf.Serializer.Deserialize<CSAutoChessGetFightRecords>(m);
                        break;
                    case OpDefine.SCAutoChessGetFightRecords:
                        result = ProtoBuf.Serializer.Deserialize<SCAutoChessGetFightRecords>(m);
                        break;
                    case OpDefine.CSAutoChessGetFightReplay:
                        result = ProtoBuf.Serializer.Deserialize<CSAutoChessGetFightReplay>(m);
                        break;
                    case OpDefine.SCAutoChessGetFightReplay:
                        result = ProtoBuf.Serializer.Deserialize<SCAutoChessGetFightReplay>(m);
                        break;
                    case OpDefine.SCAutoChessRoundFightResult:
                        result = ProtoBuf.Serializer.Deserialize<SCAutoChessRoundFightResult>(m);
                        break;
                    case OpDefine.SCAutoChessScoreChange:
                        result = ProtoBuf.Serializer.Deserialize<SCAutoChessScoreChange>(m);
                        break;
                    case OpDefine.CSAutoChessChooseShip:
                        result = ProtoBuf.Serializer.Deserialize<CSAutoChessChooseShip>(m);
                        break;
                    case OpDefine.SCAutoChessChooseShip:
                        result = ProtoBuf.Serializer.Deserialize<SCAutoChessChooseShip>(m);
                        break;
                    case OpDefine.CSAutoChessGetFightSettle:
                        result = ProtoBuf.Serializer.Deserialize<CSAutoChessGetFightSettle>(m);
                        break;
                    case OpDefine.SCAutoChessGetFightSettle:
                        result = ProtoBuf.Serializer.Deserialize<SCAutoChessGetFightSettle>(m);
                        break;
                    case OpDefine.CSAutoChessGetMapShopInfo:
                        result = ProtoBuf.Serializer.Deserialize<CSAutoChessGetMapShopInfo>(m);
                        break;
                    case OpDefine.SCAutoChessGetMapShopInfo:
                        result = ProtoBuf.Serializer.Deserialize<SCAutoChessGetMapShopInfo>(m);
                        break;
                    case OpDefine.CSAutoChessUseMap:
                        result = ProtoBuf.Serializer.Deserialize<CSAutoChessUseMap>(m);
                        break;
                    case OpDefine.SCAutoChessUseMap:
                        result = ProtoBuf.Serializer.Deserialize<SCAutoChessUseMap>(m);
                        break;
                    case OpDefine.CSAutoChessGetExtraPackInfo:
                        result = ProtoBuf.Serializer.Deserialize<CSAutoChessGetExtraPackInfo>(m);
                        break;
                    case OpDefine.SCAutoChessGetExtraPackInfo:
                        result = ProtoBuf.Serializer.Deserialize<SCAutoChessGetExtraPackInfo>(m);
                        break;
                    case OpDefine.CSAutoChessBuyPacket:
                        result = ProtoBuf.Serializer.Deserialize<CSAutoChessBuyPacket>(m);
                        break;
                    case OpDefine.SCAutoChessBuyPacket:
                        result = ProtoBuf.Serializer.Deserialize<SCAutoChessBuyPacket>(m);
                        break;
                    case OpDefine.CSGetAutoChessWeeklyTaskList:
                        result = ProtoBuf.Serializer.Deserialize<CSGetAutoChessWeeklyTaskList>(m);
                        break;
                    case OpDefine.SCGetAutoChessWeeklyTaskList:
                        result = ProtoBuf.Serializer.Deserialize<SCGetAutoChessWeeklyTaskList>(m);
                        break;
                    case OpDefine.CSGetAutoChessTaskReward:
                        result = ProtoBuf.Serializer.Deserialize<CSGetAutoChessTaskReward>(m);
                        break;
                    case OpDefine.SCGetAutoChessTaskReward:
                        result = ProtoBuf.Serializer.Deserialize<SCGetAutoChessTaskReward>(m);
                        break;
#endregion
#region 消息协议号 78000
                    case OpDefine.CSAddSessionKey:
                        result = ProtoBuf.Serializer.Deserialize<CSAddSessionKey>(m);
                        break;
                    case OpDefine.SCAddSessionKey:
                        result = ProtoBuf.Serializer.Deserialize<SCAddSessionKey>(m);
                        break;
                    case OpDefine.CSDelSessionKey:
                        result = ProtoBuf.Serializer.Deserialize<CSDelSessionKey>(m);
                        break;
                    case OpDefine.SCDelSessionKey:
                        result = ProtoBuf.Serializer.Deserialize<SCDelSessionKey>(m);
                        break;
                    case OpDefine.CSBarrageSend:
                        result = ProtoBuf.Serializer.Deserialize<CSBarrageSend>(m);
                        break;
                    case OpDefine.SCBarrageSend:
                        result = ProtoBuf.Serializer.Deserialize<SCBarrageSend>(m);
                        break;
                    case OpDefine.CSBarrageQuery:
                        result = ProtoBuf.Serializer.Deserialize<CSBarrageQuery>(m);
                        break;
                    case OpDefine.SCBarrageQuery:
                        result = ProtoBuf.Serializer.Deserialize<SCBarrageQuery>(m);
                        break;
#endregion
#region 消息协议号 19501-19600
                    case OpDefine.CSGetStatisticsInfo:
                        result = ProtoBuf.Serializer.Deserialize<CSGetStatisticsInfo>(m);
                        break;
                    case OpDefine.SCGetStatisticsInfo:
                        result = ProtoBuf.Serializer.Deserialize<SCGetStatisticsInfo>(m);
                        break;
                    case OpDefine.CSPointStep:
                        result = ProtoBuf.Serializer.Deserialize<CSPointStep>(m);
                        break;
#endregion
#region 消息协议号 19701-19800
                    case OpDefine.CSBloodyFightGetData:
                        result = ProtoBuf.Serializer.Deserialize<CSBloodyFightGetData>(m);
                        break;
                    case OpDefine.SCBloodyFightGetData:
                        result = ProtoBuf.Serializer.Deserialize<SCBloodyFightGetData>(m);
                        break;
                    case OpDefine.CSBloodyFightSelectRaid:
                        result = ProtoBuf.Serializer.Deserialize<CSBloodyFightSelectRaid>(m);
                        break;
                    case OpDefine.SCBloodyFightSelectRaid:
                        result = ProtoBuf.Serializer.Deserialize<SCBloodyFightSelectRaid>(m);
                        break;
                    case OpDefine.CSBloodyFightReviveHero:
                        result = ProtoBuf.Serializer.Deserialize<CSBloodyFightReviveHero>(m);
                        break;
                    case OpDefine.SCBloodyFightReviveHero:
                        result = ProtoBuf.Serializer.Deserialize<SCBloodyFightReviveHero>(m);
                        break;
                    case OpDefine.CSBloodyFightBattleStart:
                        result = ProtoBuf.Serializer.Deserialize<CSBloodyFightBattleStart>(m);
                        break;
                    case OpDefine.SCBloodyFightBattleStart:
                        result = ProtoBuf.Serializer.Deserialize<SCBloodyFightBattleStart>(m);
                        break;
                    case OpDefine.SCBloodyFightBattleSettle:
                        result = ProtoBuf.Serializer.Deserialize<SCBloodyFightBattleSettle>(m);
                        break;
                    case OpDefine.CSBloodyFightReelect:
                        result = ProtoBuf.Serializer.Deserialize<CSBloodyFightReelect>(m);
                        break;
                    case OpDefine.SCBloodyFightReelect:
                        result = ProtoBuf.Serializer.Deserialize<SCBloodyFightReelect>(m);
                        break;
                    case OpDefine.CSBloodyFightGetChestAwards:
                        result = ProtoBuf.Serializer.Deserialize<CSBloodyFightGetChestAwards>(m);
                        break;
                    case OpDefine.SCBloodyFightGetChestAwards:
                        result = ProtoBuf.Serializer.Deserialize<SCBloodyFightGetChestAwards>(m);
                        break;
                    case OpDefine.CSBloodyFightBuyReviveTimes:
                        result = ProtoBuf.Serializer.Deserialize<CSBloodyFightBuyReviveTimes>(m);
                        break;
                    case OpDefine.SCBloodyFightBuyReviveTimes:
                        result = ProtoBuf.Serializer.Deserialize<SCBloodyFightBuyReviveTimes>(m);
                        break;
                    case OpDefine.SSBloodyFightReset:
                        result = ProtoBuf.Serializer.Deserialize<SSBloodyFightReset>(m);
                        break;
#endregion
#region 消息协议号 17001
                    case OpDefine.CSBountyHuntHatePersons:
                        result = ProtoBuf.Serializer.Deserialize<CSBountyHuntHatePersons>(m);
                        break;
                    case OpDefine.SCBountyHuntHatePersons:
                        result = ProtoBuf.Serializer.Deserialize<SCBountyHuntHatePersons>(m);
                        break;
                    case OpDefine.CSReleaseBountyHunt:
                        result = ProtoBuf.Serializer.Deserialize<CSReleaseBountyHunt>(m);
                        break;
                    case OpDefine.SCReleaseBountyHunt:
                        result = ProtoBuf.Serializer.Deserialize<SCReleaseBountyHunt>(m);
                        break;
                    case OpDefine.CSBountyHuntPersonList:
                        result = ProtoBuf.Serializer.Deserialize<CSBountyHuntPersonList>(m);
                        break;
                    case OpDefine.SCBountyHuntPersonList:
                        result = ProtoBuf.Serializer.Deserialize<SCBountyHuntPersonList>(m);
                        break;
                    case OpDefine.CSBountyHuntBossList:
                        result = ProtoBuf.Serializer.Deserialize<CSBountyHuntBossList>(m);
                        break;
                    case OpDefine.SCBountyHuntBossList:
                        result = ProtoBuf.Serializer.Deserialize<SCBountyHuntBossList>(m);
                        break;
                    case OpDefine.CSRefreshBountyHuntPersonList:
                        result = ProtoBuf.Serializer.Deserialize<CSRefreshBountyHuntPersonList>(m);
                        break;
                    case OpDefine.SCRefreshBountyHuntPersonList:
                        result = ProtoBuf.Serializer.Deserialize<SCRefreshBountyHuntPersonList>(m);
                        break;
                    case OpDefine.CSAcceptBountyHuntPerson:
                        result = ProtoBuf.Serializer.Deserialize<CSAcceptBountyHuntPerson>(m);
                        break;
                    case OpDefine.SCAcceptBountyHuntPerson:
                        result = ProtoBuf.Serializer.Deserialize<SCAcceptBountyHuntPerson>(m);
                        break;
                    case OpDefine.CSAcceptedBountyHuntPersonList:
                        result = ProtoBuf.Serializer.Deserialize<CSAcceptedBountyHuntPersonList>(m);
                        break;
                    case OpDefine.SCAcceptedBountyHuntPersonList:
                        result = ProtoBuf.Serializer.Deserialize<SCAcceptedBountyHuntPersonList>(m);
                        break;
                    case OpDefine.CSGetHumanActiveLineInfo:
                        result = ProtoBuf.Serializer.Deserialize<CSGetHumanActiveLineInfo>(m);
                        break;
                    case OpDefine.SCGetHumanActiveLineInfo:
                        result = ProtoBuf.Serializer.Deserialize<SCGetHumanActiveLineInfo>(m);
                        break;
                    case OpDefine.SSBountyHuntBossTick:
                        result = ProtoBuf.Serializer.Deserialize<SSBountyHuntBossTick>(m);
                        break;
                    case OpDefine.SSCreateBountyHuntBoss:
                        result = ProtoBuf.Serializer.Deserialize<SSCreateBountyHuntBoss>(m);
                        break;
                    case OpDefine.SSAddBountyHuntBoss:
                        result = ProtoBuf.Serializer.Deserialize<SSAddBountyHuntBoss>(m);
                        break;
                    case OpDefine.SSRemoveBountyHuntBoss:
                        result = ProtoBuf.Serializer.Deserialize<SSRemoveBountyHuntBoss>(m);
                        break;
                    case OpDefine.CSFightBountyHuntBoss:
                        result = ProtoBuf.Serializer.Deserialize<CSFightBountyHuntBoss>(m);
                        break;
                    case OpDefine.SCFightBountyHuntBoss:
                        result = ProtoBuf.Serializer.Deserialize<SCFightBountyHuntBoss>(m);
                        break;
                    case OpDefine.SSNoticeBountyHuntBossDie:
                        result = ProtoBuf.Serializer.Deserialize<SSNoticeBountyHuntBossDie>(m);
                        break;
                    case OpDefine.CSBountyHuntBossDamageRank:
                        result = ProtoBuf.Serializer.Deserialize<CSBountyHuntBossDamageRank>(m);
                        break;
                    case OpDefine.SCBountyHuntBossDamageRank:
                        result = ProtoBuf.Serializer.Deserialize<SCBountyHuntBossDamageRank>(m);
                        break;
                    case OpDefine.SCBountyHuntBossSettle:
                        result = ProtoBuf.Serializer.Deserialize<SCBountyHuntBossSettle>(m);
                        break;
                    case OpDefine.CSConfirmArrest:
                        result = ProtoBuf.Serializer.Deserialize<CSConfirmArrest>(m);
                        break;
                    case OpDefine.CSInviteRescue:
                        result = ProtoBuf.Serializer.Deserialize<CSInviteRescue>(m);
                        break;
                    case OpDefine.SCInviteRescue:
                        result = ProtoBuf.Serializer.Deserialize<SCInviteRescue>(m);
                        break;
                    case OpDefine.CSConfirmInviteRescue:
                        result = ProtoBuf.Serializer.Deserialize<CSConfirmInviteRescue>(m);
                        break;
                    case OpDefine.CSRescueEnterFight:
                        result = ProtoBuf.Serializer.Deserialize<CSRescueEnterFight>(m);
                        break;
                    case OpDefine.SCRescueResult:
                        result = ProtoBuf.Serializer.Deserialize<SCRescueResult>(m);
                        break;
                    case OpDefine.SCRescueEnterFight:
                        result = ProtoBuf.Serializer.Deserialize<SCRescueEnterFight>(m);
                        break;
                    case OpDefine.SCPlayerConvoyStart:
                        result = ProtoBuf.Serializer.Deserialize<SCPlayerConvoyStart>(m);
                        break;
                    case OpDefine.SCPlayerConvoyEnd:
                        result = ProtoBuf.Serializer.Deserialize<SCPlayerConvoyEnd>(m);
                        break;
                    case OpDefine.CSForgiveBeConvoyer:
                        result = ProtoBuf.Serializer.Deserialize<CSForgiveBeConvoyer>(m);
                        break;
                    case OpDefine.SCForgiveBeConvoyer:
                        result = ProtoBuf.Serializer.Deserialize<SCForgiveBeConvoyer>(m);
                        break;
                    case OpDefine.CSPrisonInfo:
                        result = ProtoBuf.Serializer.Deserialize<CSPrisonInfo>(m);
                        break;
                    case OpDefine.SCPrisonInfo:
                        result = ProtoBuf.Serializer.Deserialize<SCPrisonInfo>(m);
                        break;
                    case OpDefine.CSQueryRequestGuaranteeFriends:
                        result = ProtoBuf.Serializer.Deserialize<CSQueryRequestGuaranteeFriends>(m);
                        break;
                    case OpDefine.SCQueryRequestGuaranteeFriends:
                        result = ProtoBuf.Serializer.Deserialize<SCQueryRequestGuaranteeFriends>(m);
                        break;
                    case OpDefine.CSRequestGuarantee:
                        result = ProtoBuf.Serializer.Deserialize<CSRequestGuarantee>(m);
                        break;
                    case OpDefine.SCRequestGuarantee:
                        result = ProtoBuf.Serializer.Deserialize<SCRequestGuarantee>(m);
                        break;
                    case OpDefine.CSRequestAllGuarantee:
                        result = ProtoBuf.Serializer.Deserialize<CSRequestAllGuarantee>(m);
                        break;
                    case OpDefine.SCRequestAllGuarantee:
                        result = ProtoBuf.Serializer.Deserialize<SCRequestAllGuarantee>(m);
                        break;
                    case OpDefine.CSGuaranteeForFriend:
                        result = ProtoBuf.Serializer.Deserialize<CSGuaranteeForFriend>(m);
                        break;
                    case OpDefine.SCGuaranteeForFriend:
                        result = ProtoBuf.Serializer.Deserialize<SCGuaranteeForFriend>(m);
                        break;
                    case OpDefine.CSSelfWardenFight:
                        result = ProtoBuf.Serializer.Deserialize<CSSelfWardenFight>(m);
                        break;
                    case OpDefine.SCSelfWardenFight:
                        result = ProtoBuf.Serializer.Deserialize<SCSelfWardenFight>(m);
                        break;
                    case OpDefine.CSHelpWardenFight:
                        result = ProtoBuf.Serializer.Deserialize<CSHelpWardenFight>(m);
                        break;
                    case OpDefine.SCHelpWardenFight:
                        result = ProtoBuf.Serializer.Deserialize<SCHelpWardenFight>(m);
                        break;
                    case OpDefine.CSQueryPrisonHumans:
                        result = ProtoBuf.Serializer.Deserialize<CSQueryPrisonHumans>(m);
                        break;
                    case OpDefine.SCQueryPrisonHumans:
                        result = ProtoBuf.Serializer.Deserialize<SCQueryPrisonHumans>(m);
                        break;
                    case OpDefine.CSPayForFreedom:
                        result = ProtoBuf.Serializer.Deserialize<CSPayForFreedom>(m);
                        break;
                    case OpDefine.SCPayForFreedom:
                        result = ProtoBuf.Serializer.Deserialize<SCPayForFreedom>(m);
                        break;
                    case OpDefine.CSRequestPrisonOut:
                        result = ProtoBuf.Serializer.Deserialize<CSRequestPrisonOut>(m);
                        break;
                    case OpDefine.SCRequestPrisonOut:
                        result = ProtoBuf.Serializer.Deserialize<SCRequestPrisonOut>(m);
                        break;
                    case OpDefine.SCWardenFightResult:
                        result = ProtoBuf.Serializer.Deserialize<SCWardenFightResult>(m);
                        break;
                    case OpDefine.SCHelpWardenFightSuccess:
                        result = ProtoBuf.Serializer.Deserialize<SCHelpWardenFightSuccess>(m);
                        break;
                    case OpDefine.SCGuaranteeSuccess:
                        result = ProtoBuf.Serializer.Deserialize<SCGuaranteeSuccess>(m);
                        break;
                    case OpDefine.SCKillMuchToPrison:
                        result = ProtoBuf.Serializer.Deserialize<SCKillMuchToPrison>(m);
                        break;
                    case OpDefine.SCUpdateAcceptedBountyHuntPerson:
                        result = ProtoBuf.Serializer.Deserialize<SCUpdateAcceptedBountyHuntPerson>(m);
                        break;
#endregion
#region 日常活动 14501-14600
                    case OpDefine.CSGetDailyActivityList:
                        result = ProtoBuf.Serializer.Deserialize<CSGetDailyActivityList>(m);
                        break;
                    case OpDefine.SCGetDailyActivityList:
                        result = ProtoBuf.Serializer.Deserialize<SCGetDailyActivityList>(m);
                        break;
                    case OpDefine.CSGetSpecialDailyActivityInfo:
                        result = ProtoBuf.Serializer.Deserialize<CSGetSpecialDailyActivityInfo>(m);
                        break;
                    case OpDefine.SCGetSpecialDailyActivityInfo:
                        result = ProtoBuf.Serializer.Deserialize<SCGetSpecialDailyActivityInfo>(m);
                        break;
                    case OpDefine.CSGetDailyActiveBriefInfoList:
                        result = ProtoBuf.Serializer.Deserialize<CSGetDailyActiveBriefInfoList>(m);
                        break;
                    case OpDefine.SCGetDailyActiveBriefInfoList:
                        result = ProtoBuf.Serializer.Deserialize<SCGetDailyActiveBriefInfoList>(m);
                        break;
                    case OpDefine.CSGetDailyActiveReward:
                        result = ProtoBuf.Serializer.Deserialize<CSGetDailyActiveReward>(m);
                        break;
                    case OpDefine.SCGetDailyActiveReward:
                        result = ProtoBuf.Serializer.Deserialize<SCGetDailyActiveReward>(m);
                        break;
#endregion
#region 日常任务 14351-14400
                    case OpDefine.CSGetDailyTaskList:
                        result = ProtoBuf.Serializer.Deserialize<CSGetDailyTaskList>(m);
                        break;
                    case OpDefine.SCGetDailyTaskList:
                        result = ProtoBuf.Serializer.Deserialize<SCGetDailyTaskList>(m);
                        break;
                    case OpDefine.CSRefreshDailyTaskList:
                        result = ProtoBuf.Serializer.Deserialize<CSRefreshDailyTaskList>(m);
                        break;
                    case OpDefine.SCRefreshDailyTaskList:
                        result = ProtoBuf.Serializer.Deserialize<SCRefreshDailyTaskList>(m);
                        break;
                    case OpDefine.CSAcceptDailyTask:
                        result = ProtoBuf.Serializer.Deserialize<CSAcceptDailyTask>(m);
                        break;
                    case OpDefine.SCAcceptDailyTask:
                        result = ProtoBuf.Serializer.Deserialize<SCAcceptDailyTask>(m);
                        break;
                    case OpDefine.SCGiveupDailyTask:
                        result = ProtoBuf.Serializer.Deserialize<SCGiveupDailyTask>(m);
                        break;
#endregion
#region 消息协议号 11201
                    case OpDefine.CSIdentifyEquipment:
                        result = ProtoBuf.Serializer.Deserialize<CSIdentifyEquipment>(m);
                        break;
                    case OpDefine.SCIdentifyEquipment:
                        result = ProtoBuf.Serializer.Deserialize<SCIdentifyEquipment>(m);
                        break;
                    case OpDefine.CSEquip:
                        result = ProtoBuf.Serializer.Deserialize<CSEquip>(m);
                        break;
                    case OpDefine.SCEquip:
                        result = ProtoBuf.Serializer.Deserialize<SCEquip>(m);
                        break;
                    case OpDefine.CSUnEquip:
                        result = ProtoBuf.Serializer.Deserialize<CSUnEquip>(m);
                        break;
                    case OpDefine.SCUnEquip:
                        result = ProtoBuf.Serializer.Deserialize<SCUnEquip>(m);
                        break;
                    case OpDefine.CSEquipmentPreRefine:
                        result = ProtoBuf.Serializer.Deserialize<CSEquipmentPreRefine>(m);
                        break;
                    case OpDefine.SCEquipmentPreRefine:
                        result = ProtoBuf.Serializer.Deserialize<SCEquipmentPreRefine>(m);
                        break;
                    case OpDefine.CSEquipmentRefine:
                        result = ProtoBuf.Serializer.Deserialize<CSEquipmentRefine>(m);
                        break;
                    case OpDefine.SCEquipmentRefine:
                        result = ProtoBuf.Serializer.Deserialize<SCEquipmentRefine>(m);
                        break;
                    case OpDefine.CSEquipmentDecompose:
                        result = ProtoBuf.Serializer.Deserialize<CSEquipmentDecompose>(m);
                        break;
                    case OpDefine.SCEquipmentDecompose:
                        result = ProtoBuf.Serializer.Deserialize<SCEquipmentDecompose>(m);
                        break;
                    case OpDefine.CSEquipmentRebuild:
                        result = ProtoBuf.Serializer.Deserialize<CSEquipmentRebuild>(m);
                        break;
                    case OpDefine.SCEquipmentRebuild:
                        result = ProtoBuf.Serializer.Deserialize<SCEquipmentRebuild>(m);
                        break;
                    case OpDefine.CSEquipmentPunch:
                        result = ProtoBuf.Serializer.Deserialize<CSEquipmentPunch>(m);
                        break;
                    case OpDefine.SCEquipmentPunch:
                        result = ProtoBuf.Serializer.Deserialize<SCEquipmentPunch>(m);
                        break;
                    case OpDefine.CSEquipmentInherit:
                        result = ProtoBuf.Serializer.Deserialize<CSEquipmentInherit>(m);
                        break;
                    case OpDefine.SCEquipmentInherit:
                        result = ProtoBuf.Serializer.Deserialize<SCEquipmentInherit>(m);
                        break;
                    case OpDefine.CSEquipmentGemMount:
                        result = ProtoBuf.Serializer.Deserialize<CSEquipmentGemMount>(m);
                        break;
                    case OpDefine.SCEquipmentGemMount:
                        result = ProtoBuf.Serializer.Deserialize<SCEquipmentGemMount>(m);
                        break;
                    case OpDefine.CSGetRefineFailCard:
                        result = ProtoBuf.Serializer.Deserialize<CSGetRefineFailCard>(m);
                        break;
                    case OpDefine.SCGetRefineFailCard:
                        result = ProtoBuf.Serializer.Deserialize<SCGetRefineFailCard>(m);
                        break;
                    case OpDefine.CSEquipmentGemUnmount:
                        result = ProtoBuf.Serializer.Deserialize<CSEquipmentGemUnmount>(m);
                        break;
                    case OpDefine.SCEquipmentGemUnmount:
                        result = ProtoBuf.Serializer.Deserialize<SCEquipmentGemUnmount>(m);
                        break;
                    case OpDefine.CSGetEquipmentInfo:
                        result = ProtoBuf.Serializer.Deserialize<CSGetEquipmentInfo>(m);
                        break;
                    case OpDefine.SCGetEquipmentInfo:
                        result = ProtoBuf.Serializer.Deserialize<SCGetEquipmentInfo>(m);
                        break;
                    case OpDefine.CSBatchIdentifyEquipment:
                        result = ProtoBuf.Serializer.Deserialize<CSBatchIdentifyEquipment>(m);
                        break;
                    case OpDefine.SCBatchIdentifyEquipment:
                        result = ProtoBuf.Serializer.Deserialize<SCBatchIdentifyEquipment>(m);
                        break;
                    case OpDefine.CSOneKeyEquip:
                        result = ProtoBuf.Serializer.Deserialize<CSOneKeyEquip>(m);
                        break;
                    case OpDefine.SCOneKeyEquip:
                        result = ProtoBuf.Serializer.Deserialize<SCOneKeyEquip>(m);
                        break;
                    case OpDefine.CSOneKeyOffEquip:
                        result = ProtoBuf.Serializer.Deserialize<CSOneKeyOffEquip>(m);
                        break;
                    case OpDefine.SCOneKeyOffEquip:
                        result = ProtoBuf.Serializer.Deserialize<SCOneKeyOffEquip>(m);
                        break;
#endregion
#region 消息协议号 14001
                    case OpDefine.CSGetExpeditionInfo:
                        result = ProtoBuf.Serializer.Deserialize<CSGetExpeditionInfo>(m);
                        break;
                    case OpDefine.SCGetExpeditionInfo:
                        result = ProtoBuf.Serializer.Deserialize<SCGetExpeditionInfo>(m);
                        break;
                    case OpDefine.CSGetExpeditionHeros:
                        result = ProtoBuf.Serializer.Deserialize<CSGetExpeditionHeros>(m);
                        break;
                    case OpDefine.SCGetExpeditionHeros:
                        result = ProtoBuf.Serializer.Deserialize<SCGetExpeditionHeros>(m);
                        break;
                    case OpDefine.CSRefreshExpeditionMission:
                        result = ProtoBuf.Serializer.Deserialize<CSRefreshExpeditionMission>(m);
                        break;
                    case OpDefine.SCRefreshExpeditionMission:
                        result = ProtoBuf.Serializer.Deserialize<SCRefreshExpeditionMission>(m);
                        break;
                    case OpDefine.CSStartExpeditionMission:
                        result = ProtoBuf.Serializer.Deserialize<CSStartExpeditionMission>(m);
                        break;
                    case OpDefine.SCStartExpeditionMission:
                        result = ProtoBuf.Serializer.Deserialize<SCStartExpeditionMission>(m);
                        break;
                    case OpDefine.CSGetExpeditionRewards:
                        result = ProtoBuf.Serializer.Deserialize<CSGetExpeditionRewards>(m);
                        break;
                    case OpDefine.SCGetExpeditionRewards:
                        result = ProtoBuf.Serializer.Deserialize<SCGetExpeditionRewards>(m);
                        break;
                    case OpDefine.CSGetExpeditionLevelRewards:
                        result = ProtoBuf.Serializer.Deserialize<CSGetExpeditionLevelRewards>(m);
                        break;
                    case OpDefine.SCGetExpeditionLevelRewards:
                        result = ProtoBuf.Serializer.Deserialize<SCGetExpeditionLevelRewards>(m);
                        break;
                    case OpDefine.CSGetMissionConditions:
                        result = ProtoBuf.Serializer.Deserialize<CSGetMissionConditions>(m);
                        break;
                    case OpDefine.SCGetMissionConditions:
                        result = ProtoBuf.Serializer.Deserialize<SCGetMissionConditions>(m);
                        break;
                    case OpDefine.CSDropMissionConditions:
                        result = ProtoBuf.Serializer.Deserialize<CSDropMissionConditions>(m);
                        break;
                    case OpDefine.SCDropMissionConditions:
                        result = ProtoBuf.Serializer.Deserialize<SCDropMissionConditions>(m);
                        break;
                    case OpDefine.CSFastFinish:
                        result = ProtoBuf.Serializer.Deserialize<CSFastFinish>(m);
                        break;
                    case OpDefine.SCFastFinish:
                        result = ProtoBuf.Serializer.Deserialize<SCFastFinish>(m);
                        break;
                    case OpDefine.CSFastSendHero:
                        result = ProtoBuf.Serializer.Deserialize<CSFastSendHero>(m);
                        break;
                    case OpDefine.SCFastSendHero:
                        result = ProtoBuf.Serializer.Deserialize<SCFastSendHero>(m);
                        break;
#endregion
#region 消息协议号 87601
                    case OpDefine.CSExtractEquipGetInfo:
                        result = ProtoBuf.Serializer.Deserialize<CSExtractEquipGetInfo>(m);
                        break;
                    case OpDefine.SCExtractEquipGetInfo:
                        result = ProtoBuf.Serializer.Deserialize<SCExtractEquipGetInfo>(m);
                        break;
                    case OpDefine.CSExtractEquip:
                        result = ProtoBuf.Serializer.Deserialize<CSExtractEquip>(m);
                        break;
                    case OpDefine.SCExtractEquip:
                        result = ProtoBuf.Serializer.Deserialize<SCExtractEquip>(m);
                        break;
                    case OpDefine.CSExtractEquipDecompose:
                        result = ProtoBuf.Serializer.Deserialize<CSExtractEquipDecompose>(m);
                        break;
                    case OpDefine.SCExtractEquipDecompose:
                        result = ProtoBuf.Serializer.Deserialize<SCExtractEquipDecompose>(m);
                        break;
                    case OpDefine.CSExtractEquipDecomposeInfo:
                        result = ProtoBuf.Serializer.Deserialize<CSExtractEquipDecomposeInfo>(m);
                        break;
                    case OpDefine.SCExtractEquipDecomposeInfo:
                        result = ProtoBuf.Serializer.Deserialize<SCExtractEquipDecomposeInfo>(m);
                        break;
#endregion
#region 战斗 PVP 12000-12999
                    case OpDefine.SCFightBegin:
                        result = ProtoBuf.Serializer.Deserialize<SCFightBegin>(m);
                        break;
                    case OpDefine.CSFightLoadStatus:
                        result = ProtoBuf.Serializer.Deserialize<CSFightLoadStatus>(m);
                        break;
                    case OpDefine.SCFightLoadStatus:
                        result = ProtoBuf.Serializer.Deserialize<SCFightLoadStatus>(m);
                        break;
                    case OpDefine.CSNextActionReady:
                        result = ProtoBuf.Serializer.Deserialize<CSNextActionReady>(m);
                        break;
                    case OpDefine.SCNextActionReady:
                        result = ProtoBuf.Serializer.Deserialize<SCNextActionReady>(m);
                        break;
                    case OpDefine.CSFightUnitAction:
                        result = ProtoBuf.Serializer.Deserialize<CSFightUnitAction>(m);
                        break;
                    case OpDefine.SCFightUnitAction:
                        result = ProtoBuf.Serializer.Deserialize<SCFightUnitAction>(m);
                        break;
                    case OpDefine.SCNextRoundExport:
                        result = ProtoBuf.Serializer.Deserialize<SCNextRoundExport>(m);
                        break;
                    case OpDefine.SCFightResult:
                        result = ProtoBuf.Serializer.Deserialize<SCFightResult>(m);
                        break;
                    case OpDefine.CSFightUnitActionDone:
                        result = ProtoBuf.Serializer.Deserialize<CSFightUnitActionDone>(m);
                        break;
                    case OpDefine.SCFightUnitActionDone:
                        result = ProtoBuf.Serializer.Deserialize<SCFightUnitActionDone>(m);
                        break;
                    case OpDefine.CSFightReconnect:
                        result = ProtoBuf.Serializer.Deserialize<CSFightReconnect>(m);
                        break;
                    case OpDefine.SCFightReconnect:
                        result = ProtoBuf.Serializer.Deserialize<SCFightReconnect>(m);
                        break;
                    case OpDefine.CSFightRefresh:
                        result = ProtoBuf.Serializer.Deserialize<CSFightRefresh>(m);
                        break;
                    case OpDefine.SCFightRefresh:
                        result = ProtoBuf.Serializer.Deserialize<SCFightRefresh>(m);
                        break;
                    case OpDefine.SCReplayData:
                        result = ProtoBuf.Serializer.Deserialize<SCReplayData>(m);
                        break;
                    case OpDefine.ReplayData:
                        result = ProtoBuf.Serializer.Deserialize<ReplayData>(m);
                        break;
                    case OpDefine.CSPvpFightTest:
                        result = ProtoBuf.Serializer.Deserialize<CSPvpFightTest>(m);
                        break;
                    case OpDefine.SCPvpFightTest:
                        result = ProtoBuf.Serializer.Deserialize<SCPvpFightTest>(m);
                        break;
                    case OpDefine.CSFightAutoSetting:
                        result = ProtoBuf.Serializer.Deserialize<CSFightAutoSetting>(m);
                        break;
                    case OpDefine.SCFightAutoSetting:
                        result = ProtoBuf.Serializer.Deserialize<SCFightAutoSetting>(m);
                        break;
                    case OpDefine.CSFightSkipRequest:
                        result = ProtoBuf.Serializer.Deserialize<CSFightSkipRequest>(m);
                        break;
                    case OpDefine.CSPveFightTest:
                        result = ProtoBuf.Serializer.Deserialize<CSPveFightTest>(m);
                        break;
                    case OpDefine.SCPveFightTest:
                        result = ProtoBuf.Serializer.Deserialize<SCPveFightTest>(m);
                        break;
                    case OpDefine.CSFightPlayerExit:
                        result = ProtoBuf.Serializer.Deserialize<CSFightPlayerExit>(m);
                        break;
                    case OpDefine.CSDiscussFightRequest:
                        result = ProtoBuf.Serializer.Deserialize<CSDiscussFightRequest>(m);
                        break;
                    case OpDefine.SCDiscussFightRequest:
                        result = ProtoBuf.Serializer.Deserialize<SCDiscussFightRequest>(m);
                        break;
                    case OpDefine.CSDiscussFightResponse:
                        result = ProtoBuf.Serializer.Deserialize<CSDiscussFightResponse>(m);
                        break;
                    case OpDefine.SCDiscussFightResponse:
                        result = ProtoBuf.Serializer.Deserialize<SCDiscussFightResponse>(m);
                        break;
                    case OpDefine.SCDiscussFightStart:
                        result = ProtoBuf.Serializer.Deserialize<SCDiscussFightStart>(m);
                        break;
                    case OpDefine.SCFightPlayerExit:
                        result = ProtoBuf.Serializer.Deserialize<SCFightPlayerExit>(m);
                        break;
                    case OpDefine.SCAllHeroInfo:
                        result = ProtoBuf.Serializer.Deserialize<SCAllHeroInfo>(m);
                        break;
                    case OpDefine.SCCommonFightExport:
                        result = ProtoBuf.Serializer.Deserialize<SCCommonFightExport>(m);
                        break;
#endregion
#region 成长模块 11500-11599
                    case OpDefine.CSPlayerInfo:
                        result = ProtoBuf.Serializer.Deserialize<CSPlayerInfo>(m);
                        break;
                    case OpDefine.SCPlayerInfo:
                        result = ProtoBuf.Serializer.Deserialize<SCPlayerInfo>(m);
                        break;
                    case OpDefine.CSHeroUplevel:
                        result = ProtoBuf.Serializer.Deserialize<CSHeroUplevel>(m);
                        break;
                    case OpDefine.SCHeroUplevel:
                        result = ProtoBuf.Serializer.Deserialize<SCHeroUplevel>(m);
                        break;
                    case OpDefine.CSHeroStarGrowth:
                        result = ProtoBuf.Serializer.Deserialize<CSHeroStarGrowth>(m);
                        break;
                    case OpDefine.SCHeroStarGrowth:
                        result = ProtoBuf.Serializer.Deserialize<SCHeroStarGrowth>(m);
                        break;
                    case OpDefine.CSHeroBreak:
                        result = ProtoBuf.Serializer.Deserialize<CSHeroBreak>(m);
                        break;
                    case OpDefine.SCHeroBreak:
                        result = ProtoBuf.Serializer.Deserialize<SCHeroBreak>(m);
                        break;
                    case OpDefine.CSUseSkillBook:
                        result = ProtoBuf.Serializer.Deserialize<CSUseSkillBook>(m);
                        break;
                    case OpDefine.SCUseSkillBook:
                        result = ProtoBuf.Serializer.Deserialize<SCUseSkillBook>(m);
                        break;
                    case OpDefine.CSHeroSkillLevelUp:
                        result = ProtoBuf.Serializer.Deserialize<CSHeroSkillLevelUp>(m);
                        break;
                    case OpDefine.SCHeroSkillLevelUp:
                        result = ProtoBuf.Serializer.Deserialize<SCHeroSkillLevelUp>(m);
                        break;
                    case OpDefine.CSHeroSkillPutOnOrOff:
                        result = ProtoBuf.Serializer.Deserialize<CSHeroSkillPutOnOrOff>(m);
                        break;
                    case OpDefine.SCHeroSkillPutOnOrOff:
                        result = ProtoBuf.Serializer.Deserialize<SCHeroSkillPutOnOrOff>(m);
                        break;
                    case OpDefine.CSHeroSkillReset:
                        result = ProtoBuf.Serializer.Deserialize<CSHeroSkillReset>(m);
                        break;
                    case OpDefine.SCHeroSkillReset:
                        result = ProtoBuf.Serializer.Deserialize<SCHeroSkillReset>(m);
                        break;
                    case OpDefine.CSFormationUpdate:
                        result = ProtoBuf.Serializer.Deserialize<CSFormationUpdate>(m);
                        break;
                    case OpDefine.SCFormationUpdate:
                        result = ProtoBuf.Serializer.Deserialize<SCFormationUpdate>(m);
                        break;
                    case OpDefine.CSHeroAddIntimacy:
                        result = ProtoBuf.Serializer.Deserialize<CSHeroAddIntimacy>(m);
                        break;
                    case OpDefine.SCHeroAddIntimacy:
                        result = ProtoBuf.Serializer.Deserialize<SCHeroAddIntimacy>(m);
                        break;
                    case OpDefine.CSActivateSkill:
                        result = ProtoBuf.Serializer.Deserialize<CSActivateSkill>(m);
                        break;
                    case OpDefine.SCActivateSkill:
                        result = ProtoBuf.Serializer.Deserialize<SCActivateSkill>(m);
                        break;
                    case OpDefine.CSChangeSkillSwitch:
                        result = ProtoBuf.Serializer.Deserialize<CSChangeSkillSwitch>(m);
                        break;
                    case OpDefine.SCChangeSkillSwitch:
                        result = ProtoBuf.Serializer.Deserialize<SCChangeSkillSwitch>(m);
                        break;
                    case OpDefine.CSChangeFlag:
                        result = ProtoBuf.Serializer.Deserialize<CSChangeFlag>(m);
                        break;
                    case OpDefine.SCChangeFlag:
                        result = ProtoBuf.Serializer.Deserialize<SCChangeFlag>(m);
                        break;
                    case OpDefine.CSKVInfo:
                        result = ProtoBuf.Serializer.Deserialize<CSKVInfo>(m);
                        break;
                    case OpDefine.SCKVInfo:
                        result = ProtoBuf.Serializer.Deserialize<SCKVInfo>(m);
                        break;
                    case OpDefine.CSItemCombine:
                        result = ProtoBuf.Serializer.Deserialize<CSItemCombine>(m);
                        break;
                    case OpDefine.SCItemCombine:
                        result = ProtoBuf.Serializer.Deserialize<SCItemCombine>(m);
                        break;
                    case OpDefine.CSSoulCardInfo:
                        result = ProtoBuf.Serializer.Deserialize<CSSoulCardInfo>(m);
                        break;
                    case OpDefine.SCSoulCardInfo:
                        result = ProtoBuf.Serializer.Deserialize<SCSoulCardInfo>(m);
                        break;
                    case OpDefine.CSGetSoulCard:
                        result = ProtoBuf.Serializer.Deserialize<CSGetSoulCard>(m);
                        break;
                    case OpDefine.SCGetSoulCard:
                        result = ProtoBuf.Serializer.Deserialize<SCGetSoulCard>(m);
                        break;
                    case OpDefine.CSInlaySoulCard:
                        result = ProtoBuf.Serializer.Deserialize<CSInlaySoulCard>(m);
                        break;
                    case OpDefine.SCInlaySoulCard:
                        result = ProtoBuf.Serializer.Deserialize<SCInlaySoulCard>(m);
                        break;
                    case OpDefine.CSClearSoulCard:
                        result = ProtoBuf.Serializer.Deserialize<CSClearSoulCard>(m);
                        break;
                    case OpDefine.SCClearSoulCard:
                        result = ProtoBuf.Serializer.Deserialize<SCClearSoulCard>(m);
                        break;
                    case OpDefine.CSSoulCardInherit:
                        result = ProtoBuf.Serializer.Deserialize<CSSoulCardInherit>(m);
                        break;
                    case OpDefine.SCSoulCardInherit:
                        result = ProtoBuf.Serializer.Deserialize<SCSoulCardInherit>(m);
                        break;
                    case OpDefine.CSHeroCombine:
                        result = ProtoBuf.Serializer.Deserialize<CSHeroCombine>(m);
                        break;
                    case OpDefine.SCHeroCombine:
                        result = ProtoBuf.Serializer.Deserialize<SCHeroCombine>(m);
                        break;
                    case OpDefine.SCSyncHeroInfo:
                        result = ProtoBuf.Serializer.Deserialize<SCSyncHeroInfo>(m);
                        break;
                    case OpDefine.CSOpenFormation:
                        result = ProtoBuf.Serializer.Deserialize<CSOpenFormation>(m);
                        break;
                    case OpDefine.SCOpenFormation:
                        result = ProtoBuf.Serializer.Deserialize<SCOpenFormation>(m);
                        break;
                    case OpDefine.CSHeroTrain:
                        result = ProtoBuf.Serializer.Deserialize<CSHeroTrain>(m);
                        break;
                    case OpDefine.SCHeroTrain:
                        result = ProtoBuf.Serializer.Deserialize<SCHeroTrain>(m);
                        break;
                    case OpDefine.CSHeroTrainInherit:
                        result = ProtoBuf.Serializer.Deserialize<CSHeroTrainInherit>(m);
                        break;
                    case OpDefine.SCHeroTrainInherit:
                        result = ProtoBuf.Serializer.Deserialize<SCHeroTrainInherit>(m);
                        break;
                    case OpDefine.SCSyncHeroForeverItemInfos:
                        result = ProtoBuf.Serializer.Deserialize<SCSyncHeroForeverItemInfos>(m);
                        break;
                    case OpDefine.SCNoticePlayerOpenGM:
                        result = ProtoBuf.Serializer.Deserialize<SCNoticePlayerOpenGM>(m);
                        break;
                    case OpDefine.SCSyncHeroBaseProp:
                        result = ProtoBuf.Serializer.Deserialize<SCSyncHeroBaseProp>(m);
                        break;
                    case OpDefine.CSSyncHeroBaseProp:
                        result = ProtoBuf.Serializer.Deserialize<CSSyncHeroBaseProp>(m);
                        break;
                    case OpDefine.CSGetFormationInfo:
                        result = ProtoBuf.Serializer.Deserialize<CSGetFormationInfo>(m);
                        break;
                    case OpDefine.SCGetFormationInfo:
                        result = ProtoBuf.Serializer.Deserialize<SCGetFormationInfo>(m);
                        break;
                    case OpDefine.CSFormationSetCurrentIndex:
                        result = ProtoBuf.Serializer.Deserialize<CSFormationSetCurrentIndex>(m);
                        break;
                    case OpDefine.SCFormationSetCurrentIndex:
                        result = ProtoBuf.Serializer.Deserialize<SCFormationSetCurrentIndex>(m);
                        break;
                    case OpDefine.CSFormationOpenIndex:
                        result = ProtoBuf.Serializer.Deserialize<CSFormationOpenIndex>(m);
                        break;
                    case OpDefine.SCFormationOpenIndex:
                        result = ProtoBuf.Serializer.Deserialize<SCFormationOpenIndex>(m);
                        break;
                    case OpDefine.CSExchangeFormationPos:
                        result = ProtoBuf.Serializer.Deserialize<CSExchangeFormationPos>(m);
                        break;
                    case OpDefine.SCExchangeFormationPos:
                        result = ProtoBuf.Serializer.Deserialize<SCExchangeFormationPos>(m);
                        break;
                    case OpDefine.CSBreachPlayerLevel:
                        result = ProtoBuf.Serializer.Deserialize<CSBreachPlayerLevel>(m);
                        break;
                    case OpDefine.SCBreachPlayerLevel:
                        result = ProtoBuf.Serializer.Deserialize<SCBreachPlayerLevel>(m);
                        break;
                    case OpDefine.CSBuyTimes:
                        result = ProtoBuf.Serializer.Deserialize<CSBuyTimes>(m);
                        break;
                    case OpDefine.SCBuyTimes:
                        result = ProtoBuf.Serializer.Deserialize<SCBuyTimes>(m);
                        break;
                    case OpDefine.CSHeroCostSkillPoint:
                        result = ProtoBuf.Serializer.Deserialize<CSHeroCostSkillPoint>(m);
                        break;
                    case OpDefine.SCHeroCostSkillPoint:
                        result = ProtoBuf.Serializer.Deserialize<SCHeroCostSkillPoint>(m);
                        break;
                    case OpDefine.CSSetFormationAutoSkillReleaseType:
                        result = ProtoBuf.Serializer.Deserialize<CSSetFormationAutoSkillReleaseType>(m);
                        break;
                    case OpDefine.SCSetFormationAutoSkillReleaseType:
                        result = ProtoBuf.Serializer.Deserialize<SCSetFormationAutoSkillReleaseType>(m);
                        break;
                    case OpDefine.CSItemDebrisCombine:
                        result = ProtoBuf.Serializer.Deserialize<CSItemDebrisCombine>(m);
                        break;
                    case OpDefine.SCItemDebrisCombine:
                        result = ProtoBuf.Serializer.Deserialize<SCItemDebrisCombine>(m);
                        break;
                    case OpDefine.CSGetCommonFormation:
                        result = ProtoBuf.Serializer.Deserialize<CSGetCommonFormation>(m);
                        break;
                    case OpDefine.SCGetCommonFormation:
                        result = ProtoBuf.Serializer.Deserialize<SCGetCommonFormation>(m);
                        break;
                    case OpDefine.CSSetCommonFormation:
                        result = ProtoBuf.Serializer.Deserialize<CSSetCommonFormation>(m);
                        break;
                    case OpDefine.SCSetCommonFormation:
                        result = ProtoBuf.Serializer.Deserialize<SCSetCommonFormation>(m);
                        break;
                    case OpDefine.CSFormationUplevel:
                        result = ProtoBuf.Serializer.Deserialize<CSFormationUplevel>(m);
                        break;
                    case OpDefine.SCFormationUplevel:
                        result = ProtoBuf.Serializer.Deserialize<SCFormationUplevel>(m);
                        break;
                    case OpDefine.CSExchangeAssistPos:
                        result = ProtoBuf.Serializer.Deserialize<CSExchangeAssistPos>(m);
                        break;
                    case OpDefine.SCExchangeAssistPos:
                        result = ProtoBuf.Serializer.Deserialize<SCExchangeAssistPos>(m);
                        break;
#endregion
#region 时装模块 83001-84000
                    case OpDefine.CSGetFashionInfo:
                        result = ProtoBuf.Serializer.Deserialize<CSGetFashionInfo>(m);
                        break;
                    case OpDefine.SCGetFashionInfo:
                        result = ProtoBuf.Serializer.Deserialize<SCGetFashionInfo>(m);
                        break;
                    case OpDefine.CSUnlockFashion:
                        result = ProtoBuf.Serializer.Deserialize<CSUnlockFashion>(m);
                        break;
                    case OpDefine.SCUnlockFashion:
                        result = ProtoBuf.Serializer.Deserialize<SCUnlockFashion>(m);
                        break;
                    case OpDefine.CSOnHeroFashion:
                        result = ProtoBuf.Serializer.Deserialize<CSOnHeroFashion>(m);
                        break;
                    case OpDefine.SCOnHeroFashion:
                        result = ProtoBuf.Serializer.Deserialize<SCOnHeroFashion>(m);
                        break;
                    case OpDefine.CSOnPlayerFashion:
                        result = ProtoBuf.Serializer.Deserialize<CSOnPlayerFashion>(m);
                        break;
                    case OpDefine.SCOnPlayerFashion:
                        result = ProtoBuf.Serializer.Deserialize<SCOnPlayerFashion>(m);
                        break;
#endregion
#region 消息协议号 14201
                    case OpDefine.CSGetCommentList:
                        result = ProtoBuf.Serializer.Deserialize<CSGetCommentList>(m);
                        break;
                    case OpDefine.SCGetCommentList:
                        result = ProtoBuf.Serializer.Deserialize<SCGetCommentList>(m);
                        break;
                    case OpDefine.CSSendComment:
                        result = ProtoBuf.Serializer.Deserialize<CSSendComment>(m);
                        break;
                    case OpDefine.SCSendComment:
                        result = ProtoBuf.Serializer.Deserialize<SCSendComment>(m);
                        break;
                    case OpDefine.CSSendCommentLike:
                        result = ProtoBuf.Serializer.Deserialize<CSSendCommentLike>(m);
                        break;
                    case OpDefine.SCSendCommentLike:
                        result = ProtoBuf.Serializer.Deserialize<SCSendCommentLike>(m);
                        break;
                    case OpDefine.CSGetCommentCount:
                        result = ProtoBuf.Serializer.Deserialize<CSGetCommentCount>(m);
                        break;
                    case OpDefine.SCGetCommentCount:
                        result = ProtoBuf.Serializer.Deserialize<SCGetCommentCount>(m);
                        break;
#endregion
#region 消息协议号 89051-90100
                    case OpDefine.CSEnterHideTreasure:
                        result = ProtoBuf.Serializer.Deserialize<CSEnterHideTreasure>(m);
                        break;
                    case OpDefine.SCEnterHideTreasure:
                        result = ProtoBuf.Serializer.Deserialize<SCEnterHideTreasure>(m);
                        break;
                    case OpDefine.CSUnlockHero:
                        result = ProtoBuf.Serializer.Deserialize<CSUnlockHero>(m);
                        break;
                    case OpDefine.SCUnlockHero:
                        result = ProtoBuf.Serializer.Deserialize<SCUnlockHero>(m);
                        break;
                    case OpDefine.CSUnlockEquip:
                        result = ProtoBuf.Serializer.Deserialize<CSUnlockEquip>(m);
                        break;
                    case OpDefine.SCUnlockEquip:
                        result = ProtoBuf.Serializer.Deserialize<SCUnlockEquip>(m);
                        break;
                    case OpDefine.CSUpdateHideTreasureFormation:
                        result = ProtoBuf.Serializer.Deserialize<CSUpdateHideTreasureFormation>(m);
                        break;
                    case OpDefine.SCUpdateHideTreasureFormation:
                        result = ProtoBuf.Serializer.Deserialize<SCUpdateHideTreasureFormation>(m);
                        break;
                    case OpDefine.CSHideTreasureShipOut:
                        result = ProtoBuf.Serializer.Deserialize<CSHideTreasureShipOut>(m);
                        break;
                    case OpDefine.SCHideTreasureShipOut:
                        result = ProtoBuf.Serializer.Deserialize<SCHideTreasureShipOut>(m);
                        break;
                    case OpDefine.CSOpenBox:
                        result = ProtoBuf.Serializer.Deserialize<CSOpenBox>(m);
                        break;
                    case OpDefine.SCOpenBox:
                        result = ProtoBuf.Serializer.Deserialize<SCOpenBox>(m);
                        break;
                    case OpDefine.CSHideTreasureFight:
                        result = ProtoBuf.Serializer.Deserialize<CSHideTreasureFight>(m);
                        break;
                    case OpDefine.SCHideTreasureFight:
                        result = ProtoBuf.Serializer.Deserialize<SCHideTreasureFight>(m);
                        break;
                    case OpDefine.SCHideTreasureFightSettle:
                        result = ProtoBuf.Serializer.Deserialize<SCHideTreasureFightSettle>(m);
                        break;
                    case OpDefine.CSLeaveHideTreasure:
                        result = ProtoBuf.Serializer.Deserialize<CSLeaveHideTreasure>(m);
                        break;
                    case OpDefine.CSUpdateHideTreasurePosition:
                        result = ProtoBuf.Serializer.Deserialize<CSUpdateHideTreasurePosition>(m);
                        break;
                    case OpDefine.CSUnlockShip:
                        result = ProtoBuf.Serializer.Deserialize<CSUnlockShip>(m);
                        break;
                    case OpDefine.SCUnlockShip:
                        result = ProtoBuf.Serializer.Deserialize<SCUnlockShip>(m);
                        break;
                    case OpDefine.CSHideTreasureFire:
                        result = ProtoBuf.Serializer.Deserialize<CSHideTreasureFire>(m);
                        break;
                    case OpDefine.SCHideTreasureFire:
                        result = ProtoBuf.Serializer.Deserialize<SCHideTreasureFire>(m);
                        break;
                    case OpDefine.SCAddOneBox:
                        result = ProtoBuf.Serializer.Deserialize<SCAddOneBox>(m);
                        break;
                    case OpDefine.CSHideTreasureRes:
                        result = ProtoBuf.Serializer.Deserialize<CSHideTreasureRes>(m);
                        break;
                    case OpDefine.SCHideTreasureRes:
                        result = ProtoBuf.Serializer.Deserialize<SCHideTreasureRes>(m);
                        break;
                    case OpDefine.CSCostActiveCode:
                        result = ProtoBuf.Serializer.Deserialize<CSCostActiveCode>(m);
                        break;
                    case OpDefine.SCCostActiveCode:
                        result = ProtoBuf.Serializer.Deserialize<SCCostActiveCode>(m);
                        break;
                    case OpDefine.CSHideTreasurePlunder:
                        result = ProtoBuf.Serializer.Deserialize<CSHideTreasurePlunder>(m);
                        break;
                    case OpDefine.SCHideTreasurePlunder:
                        result = ProtoBuf.Serializer.Deserialize<SCHideTreasurePlunder>(m);
                        break;
                    case OpDefine.SCHideTreasureOver:
                        result = ProtoBuf.Serializer.Deserialize<SCHideTreasureOver>(m);
                        break;
                    case OpDefine.SCHideTreasureSyncHp:
                        result = ProtoBuf.Serializer.Deserialize<SCHideTreasureSyncHp>(m);
                        break;
                    case OpDefine.CSGetTempReward:
                        result = ProtoBuf.Serializer.Deserialize<CSGetTempReward>(m);
                        break;
                    case OpDefine.SCGetTempReward:
                        result = ProtoBuf.Serializer.Deserialize<SCGetTempReward>(m);
                        break;
#endregion
#region 消息协议号 82001-83000
                    case OpDefine.CSEnterHoliday:
                        result = ProtoBuf.Serializer.Deserialize<CSEnterHoliday>(m);
                        break;
                    case OpDefine.SCEnterHoliday:
                        result = ProtoBuf.Serializer.Deserialize<SCEnterHoliday>(m);
                        break;
                    case OpDefine.CSGetHolidayLoginInfo:
                        result = ProtoBuf.Serializer.Deserialize<CSGetHolidayLoginInfo>(m);
                        break;
                    case OpDefine.SCGetHolidayLoginInfo:
                        result = ProtoBuf.Serializer.Deserialize<SCGetHolidayLoginInfo>(m);
                        break;
                    case OpDefine.CSGetHolidayLoginReward:
                        result = ProtoBuf.Serializer.Deserialize<CSGetHolidayLoginReward>(m);
                        break;
                    case OpDefine.SCGetHolidayLoginReward:
                        result = ProtoBuf.Serializer.Deserialize<SCGetHolidayLoginReward>(m);
                        break;
                    case OpDefine.CSEnterHolidayWithOnlyTransfer:
                        result = ProtoBuf.Serializer.Deserialize<CSEnterHolidayWithOnlyTransfer>(m);
                        break;
                    case OpDefine.SCEnterHolidayWithOnlyTransfer:
                        result = ProtoBuf.Serializer.Deserialize<SCEnterHolidayWithOnlyTransfer>(m);
                        break;
                    case OpDefine.CSGetContinuousPayInfo:
                        result = ProtoBuf.Serializer.Deserialize<CSGetContinuousPayInfo>(m);
                        break;
                    case OpDefine.SCGetContinuousPayInfo:
                        result = ProtoBuf.Serializer.Deserialize<SCGetContinuousPayInfo>(m);
                        break;
                    case OpDefine.CSGetContinuousPayReward:
                        result = ProtoBuf.Serializer.Deserialize<CSGetContinuousPayReward>(m);
                        break;
                    case OpDefine.SCGetContinuousPayReward:
                        result = ProtoBuf.Serializer.Deserialize<SCGetContinuousPayReward>(m);
                        break;
                    case OpDefine.CSGetDiamondCostInfo:
                        result = ProtoBuf.Serializer.Deserialize<CSGetDiamondCostInfo>(m);
                        break;
                    case OpDefine.SCGetDiamondCostInfo:
                        result = ProtoBuf.Serializer.Deserialize<SCGetDiamondCostInfo>(m);
                        break;
                    case OpDefine.CSGetDiamondCostReward:
                        result = ProtoBuf.Serializer.Deserialize<CSGetDiamondCostReward>(m);
                        break;
                    case OpDefine.SCGetDiamondCostReward:
                        result = ProtoBuf.Serializer.Deserialize<SCGetDiamondCostReward>(m);
                        break;
                    case OpDefine.CSGetExtraDropInfo:
                        result = ProtoBuf.Serializer.Deserialize<CSGetExtraDropInfo>(m);
                        break;
                    case OpDefine.SCGetExtraDropInfo:
                        result = ProtoBuf.Serializer.Deserialize<SCGetExtraDropInfo>(m);
                        break;
                    case OpDefine.CSGetExtraDropReward:
                        result = ProtoBuf.Serializer.Deserialize<CSGetExtraDropReward>(m);
                        break;
                    case OpDefine.SCGetExtraDropReward:
                        result = ProtoBuf.Serializer.Deserialize<SCGetExtraDropReward>(m);
                        break;
                    case OpDefine.CSDailyAddEnergyInfo:
                        result = ProtoBuf.Serializer.Deserialize<CSDailyAddEnergyInfo>(m);
                        break;
                    case OpDefine.SCDailyAddEnergyInfo:
                        result = ProtoBuf.Serializer.Deserialize<SCDailyAddEnergyInfo>(m);
                        break;
                    case OpDefine.CSAddEnergy:
                        result = ProtoBuf.Serializer.Deserialize<CSAddEnergy>(m);
                        break;
                    case OpDefine.SCAddEnergy:
                        result = ProtoBuf.Serializer.Deserialize<SCAddEnergy>(m);
                        break;
#endregion
#region 消息协议号 15101-15150
                    case OpDefine.CSPlayerIntegralArena:
                        result = ProtoBuf.Serializer.Deserialize<CSPlayerIntegralArena>(m);
                        break;
                    case OpDefine.SCPlayerIntegralArena:
                        result = ProtoBuf.Serializer.Deserialize<SCPlayerIntegralArena>(m);
                        break;
                    case OpDefine.CSCancelIntegralMatch:
                        result = ProtoBuf.Serializer.Deserialize<CSCancelIntegralMatch>(m);
                        break;
                    case OpDefine.SCCancelIntegralMatch:
                        result = ProtoBuf.Serializer.Deserialize<SCCancelIntegralMatch>(m);
                        break;
                    case OpDefine.CSIntegralArenaMatch:
                        result = ProtoBuf.Serializer.Deserialize<CSIntegralArenaMatch>(m);
                        break;
                    case OpDefine.SCIntegralArenaMatch:
                        result = ProtoBuf.Serializer.Deserialize<SCIntegralArenaMatch>(m);
                        break;
                    case OpDefine.CSIntegralFightReady:
                        result = ProtoBuf.Serializer.Deserialize<CSIntegralFightReady>(m);
                        break;
                    case OpDefine.SCIntegralFightReady:
                        result = ProtoBuf.Serializer.Deserialize<SCIntegralFightReady>(m);
                        break;
                    case OpDefine.SCIntegralMatchSuccess:
                        result = ProtoBuf.Serializer.Deserialize<SCIntegralMatchSuccess>(m);
                        break;
                    case OpDefine.SCStartIntegralFight:
                        result = ProtoBuf.Serializer.Deserialize<SCStartIntegralFight>(m);
                        break;
                    case OpDefine.SCArenaFightResult:
                        result = ProtoBuf.Serializer.Deserialize<SCArenaFightResult>(m);
                        break;
                    case OpDefine.CSPlayerFightRecord:
                        result = ProtoBuf.Serializer.Deserialize<CSPlayerFightRecord>(m);
                        break;
                    case OpDefine.SCPlayerFightRecord:
                        result = ProtoBuf.Serializer.Deserialize<SCPlayerFightRecord>(m);
                        break;
                    case OpDefine.CSLookFightProcess:
                        result = ProtoBuf.Serializer.Deserialize<CSLookFightProcess>(m);
                        break;
                    case OpDefine.SCLookFightProcess:
                        result = ProtoBuf.Serializer.Deserialize<SCLookFightProcess>(m);
                        break;
                    case OpDefine.CSLookIntegralTask:
                        result = ProtoBuf.Serializer.Deserialize<CSLookIntegralTask>(m);
                        break;
                    case OpDefine.SCLookIntegralTask:
                        result = ProtoBuf.Serializer.Deserialize<SCLookIntegralTask>(m);
                        break;
                    case OpDefine.CSGetIntegralTaskReward:
                        result = ProtoBuf.Serializer.Deserialize<CSGetIntegralTaskReward>(m);
                        break;
                    case OpDefine.SCGetIntegralTaskReward:
                        result = ProtoBuf.Serializer.Deserialize<SCGetIntegralTaskReward>(m);
                        break;
#endregion
#region 消息协议号 22001-22100
                    case OpDefine.CSConvertInviteCodeReward:
                        result = ProtoBuf.Serializer.Deserialize<CSConvertInviteCodeReward>(m);
                        break;
                    case OpDefine.SCConvertInviteCodeReward:
                        result = ProtoBuf.Serializer.Deserialize<SCConvertInviteCodeReward>(m);
                        break;
                    case OpDefine.CSReceiveInviteReward:
                        result = ProtoBuf.Serializer.Deserialize<CSReceiveInviteReward>(m);
                        break;
                    case OpDefine.SCReceiveInviteReward:
                        result = ProtoBuf.Serializer.Deserialize<SCReceiveInviteReward>(m);
                        break;
                    case OpDefine.CSGetInvitationInfo:
                        result = ProtoBuf.Serializer.Deserialize<CSGetInvitationInfo>(m);
                        break;
                    case OpDefine.SCGetInvitationInfo:
                        result = ProtoBuf.Serializer.Deserialize<SCGetInvitationInfo>(m);
                        break;
#endregion
#region 天梯争霸赛协议号 84001
                    case OpDefine.CSLadderWarInfo:
                        result = ProtoBuf.Serializer.Deserialize<CSLadderWarInfo>(m);
                        break;
                    case OpDefine.SCLadderWarInfo:
                        result = ProtoBuf.Serializer.Deserialize<SCLadderWarInfo>(m);
                        break;
                    case OpDefine.CSLadderWarGetNicePointHistory:
                        result = ProtoBuf.Serializer.Deserialize<CSLadderWarGetNicePointHistory>(m);
                        break;
                    case OpDefine.SCLadderWarGetNicePointHistory:
                        result = ProtoBuf.Serializer.Deserialize<SCLadderWarGetNicePointHistory>(m);
                        break;
                    case OpDefine.CSGetLadderWarGuessInfo:
                        result = ProtoBuf.Serializer.Deserialize<CSGetLadderWarGuessInfo>(m);
                        break;
                    case OpDefine.SCGetLadderWarGuessInfo:
                        result = ProtoBuf.Serializer.Deserialize<SCGetLadderWarGuessInfo>(m);
                        break;
                    case OpDefine.CSLadderWarGuessRequest:
                        result = ProtoBuf.Serializer.Deserialize<CSLadderWarGuessRequest>(m);
                        break;
                    case OpDefine.SCLadderWarGuessRequest:
                        result = ProtoBuf.Serializer.Deserialize<SCLadderWarGuessRequest>(m);
                        break;
                    case OpDefine.CSLadderWarRewardRequest:
                        result = ProtoBuf.Serializer.Deserialize<CSLadderWarRewardRequest>(m);
                        break;
                    case OpDefine.SCLadderWarRewardRequest:
                        result = ProtoBuf.Serializer.Deserialize<SCLadderWarRewardRequest>(m);
                        break;
                    case OpDefine.CSLadderWarBaseInfo:
                        result = ProtoBuf.Serializer.Deserialize<CSLadderWarBaseInfo>(m);
                        break;
                    case OpDefine.SCLadderWarBaseInfo:
                        result = ProtoBuf.Serializer.Deserialize<SCLadderWarBaseInfo>(m);
                        break;
                    case OpDefine.CSOnceLadderCompetitionData:
                        result = ProtoBuf.Serializer.Deserialize<CSOnceLadderCompetitionData>(m);
                        break;
                    case OpDefine.SCOnceLadderCompetitionData:
                        result = ProtoBuf.Serializer.Deserialize<SCOnceLadderCompetitionData>(m);
                        break;
                    case OpDefine.CSLadderCompetitionSupport:
                        result = ProtoBuf.Serializer.Deserialize<CSLadderCompetitionSupport>(m);
                        break;
                    case OpDefine.SCLadderCompetitionSupport:
                        result = ProtoBuf.Serializer.Deserialize<SCLadderCompetitionSupport>(m);
                        break;
                    case OpDefine.CSReadyFightWindow:
                        result = ProtoBuf.Serializer.Deserialize<CSReadyFightWindow>(m);
                        break;
                    case OpDefine.SCReadyFightWindow:
                        result = ProtoBuf.Serializer.Deserialize<SCReadyFightWindow>(m);
                        break;
                    case OpDefine.CSConfirmReady:
                        result = ProtoBuf.Serializer.Deserialize<CSConfirmReady>(m);
                        break;
                    case OpDefine.SCConfirmReady:
                        result = ProtoBuf.Serializer.Deserialize<SCConfirmReady>(m);
                        break;
                    case OpDefine.SCStartLadderCompetitionFight:
                        result = ProtoBuf.Serializer.Deserialize<SCStartLadderCompetitionFight>(m);
                        break;
                    case OpDefine.SCLadderCompetitionFightResult:
                        result = ProtoBuf.Serializer.Deserialize<SCLadderCompetitionFightResult>(m);
                        break;
                    case OpDefine.CSLadderCompetitionFightingEnter:
                        result = ProtoBuf.Serializer.Deserialize<CSLadderCompetitionFightingEnter>(m);
                        break;
                    case OpDefine.SCLadderCompetitionFightingEnter:
                        result = ProtoBuf.Serializer.Deserialize<SCLadderCompetitionFightingEnter>(m);
                        break;
                    case OpDefine.CSLadderCompetitionSupportRefresh:
                        result = ProtoBuf.Serializer.Deserialize<CSLadderCompetitionSupportRefresh>(m);
                        break;
                    case OpDefine.SCLadderCompetitionSupportRefresh:
                        result = ProtoBuf.Serializer.Deserialize<SCLadderCompetitionSupportRefresh>(m);
                        break;
#endregion
#region 签到 15601-15700
                    case OpDefine.CSGetPlayerLevelRewardInfo:
                        result = ProtoBuf.Serializer.Deserialize<CSGetPlayerLevelRewardInfo>(m);
                        break;
                    case OpDefine.SCGetPlayerLevelRewardInfo:
                        result = ProtoBuf.Serializer.Deserialize<SCGetPlayerLevelRewardInfo>(m);
                        break;
                    case OpDefine.CSGetPlayerLevelReward:
                        result = ProtoBuf.Serializer.Deserialize<CSGetPlayerLevelReward>(m);
                        break;
                    case OpDefine.SCGetPlayerLevelReward:
                        result = ProtoBuf.Serializer.Deserialize<SCGetPlayerLevelReward>(m);
                        break;
#endregion
#region 消息协议号 13501
                    case OpDefine.CSLifeInfo:
                        result = ProtoBuf.Serializer.Deserialize<CSLifeInfo>(m);
                        break;
                    case OpDefine.SCLifeInfo:
                        result = ProtoBuf.Serializer.Deserialize<SCLifeInfo>(m);
                        break;
                    case OpDefine.CSBuyEnergy:
                        result = ProtoBuf.Serializer.Deserialize<CSBuyEnergy>(m);
                        break;
                    case OpDefine.SCBuyEnergy:
                        result = ProtoBuf.Serializer.Deserialize<SCBuyEnergy>(m);
                        break;
                    case OpDefine.CSSkillLevelUp:
                        result = ProtoBuf.Serializer.Deserialize<CSSkillLevelUp>(m);
                        break;
                    case OpDefine.SCSkillLevelUp:
                        result = ProtoBuf.Serializer.Deserialize<SCSkillLevelUp>(m);
                        break;
                    case OpDefine.CSCheckBuyTimes:
                        result = ProtoBuf.Serializer.Deserialize<CSCheckBuyTimes>(m);
                        break;
                    case OpDefine.SCCheckBuyTimes:
                        result = ProtoBuf.Serializer.Deserialize<SCCheckBuyTimes>(m);
                        break;
                    case OpDefine.CSGetComposeList:
                        result = ProtoBuf.Serializer.Deserialize<CSGetComposeList>(m);
                        break;
                    case OpDefine.SCGetComposeList:
                        result = ProtoBuf.Serializer.Deserialize<SCGetComposeList>(m);
                        break;
                    case OpDefine.CSComposeItem:
                        result = ProtoBuf.Serializer.Deserialize<CSComposeItem>(m);
                        break;
                    case OpDefine.SCComposeItem:
                        result = ProtoBuf.Serializer.Deserialize<SCComposeItem>(m);
                        break;
                    case OpDefine.CSGemCombine:
                        result = ProtoBuf.Serializer.Deserialize<CSGemCombine>(m);
                        break;
                    case OpDefine.SCGemCombine:
                        result = ProtoBuf.Serializer.Deserialize<SCGemCombine>(m);
                        break;
                    case OpDefine.CSComposeItemOneStep:
                        result = ProtoBuf.Serializer.Deserialize<CSComposeItemOneStep>(m);
                        break;
                    case OpDefine.SCComposeItemOneStep:
                        result = ProtoBuf.Serializer.Deserialize<SCComposeItemOneStep>(m);
                        break;
                    case OpDefine.CSDecomposeItem:
                        result = ProtoBuf.Serializer.Deserialize<CSDecomposeItem>(m);
                        break;
                    case OpDefine.SCDecomposeItem:
                        result = ProtoBuf.Serializer.Deserialize<SCDecomposeItem>(m);
                        break;
#endregion
#region 消息协议号  87100 -  87200
                    case OpDefine.CSGetLuckyCardInfo:
                        result = ProtoBuf.Serializer.Deserialize<CSGetLuckyCardInfo>(m);
                        break;
                    case OpDefine.SCGetLuckyCardInfo:
                        result = ProtoBuf.Serializer.Deserialize<SCGetLuckyCardInfo>(m);
                        break;
                    case OpDefine.CSTurnLuckyCard:
                        result = ProtoBuf.Serializer.Deserialize<CSTurnLuckyCard>(m);
                        break;
                    case OpDefine.SCTurnLuckyCard:
                        result = ProtoBuf.Serializer.Deserialize<SCTurnLuckyCard>(m);
                        break;
                    case OpDefine.CSRefreshLuckyCard:
                        result = ProtoBuf.Serializer.Deserialize<CSRefreshLuckyCard>(m);
                        break;
                    case OpDefine.SCRefreshLuckyCard:
                        result = ProtoBuf.Serializer.Deserialize<SCRefreshLuckyCard>(m);
                        break;
                    case OpDefine.CSGetLuckyCardProgress:
                        result = ProtoBuf.Serializer.Deserialize<CSGetLuckyCardProgress>(m);
                        break;
                    case OpDefine.SCGetLuckyCardProgress:
                        result = ProtoBuf.Serializer.Deserialize<SCGetLuckyCardProgress>(m);
                        break;
                    case OpDefine.CSGetPreviewRewards:
                        result = ProtoBuf.Serializer.Deserialize<CSGetPreviewRewards>(m);
                        break;
                    case OpDefine.SCGetPreviewRewards:
                        result = ProtoBuf.Serializer.Deserialize<SCGetPreviewRewards>(m);
                        break;
                    case OpDefine.CSLuckyCardEnter:
                        result = ProtoBuf.Serializer.Deserialize<CSLuckyCardEnter>(m);
                        break;
                    case OpDefine.SCLuckyCardEnter:
                        result = ProtoBuf.Serializer.Deserialize<SCLuckyCardEnter>(m);
                        break;
                    case OpDefine.CSLuckyCardStart:
                        result = ProtoBuf.Serializer.Deserialize<CSLuckyCardStart>(m);
                        break;
                    case OpDefine.SCLuckyCardStart:
                        result = ProtoBuf.Serializer.Deserialize<SCLuckyCardStart>(m);
                        break;
                    case OpDefine.CSLuckyCardPlay:
                        result = ProtoBuf.Serializer.Deserialize<CSLuckyCardPlay>(m);
                        break;
                    case OpDefine.SCLuckyCardPlay:
                        result = ProtoBuf.Serializer.Deserialize<SCLuckyCardPlay>(m);
                        break;
                    case OpDefine.CSLuckyCardRewardsShow:
                        result = ProtoBuf.Serializer.Deserialize<CSLuckyCardRewardsShow>(m);
                        break;
                    case OpDefine.SCLuckyCardRewardsShow:
                        result = ProtoBuf.Serializer.Deserialize<SCLuckyCardRewardsShow>(m);
                        break;
#endregion
#region 消息协议号 19001
                    case OpDefine.CSMazeGetTranserInfo:
                        result = ProtoBuf.Serializer.Deserialize<CSMazeGetTranserInfo>(m);
                        break;
                    case OpDefine.SCMazeGetTranserInfo:
                        result = ProtoBuf.Serializer.Deserialize<SCMazeGetTranserInfo>(m);
                        break;
                    case OpDefine.CSMazeEnter:
                        result = ProtoBuf.Serializer.Deserialize<CSMazeEnter>(m);
                        break;
                    case OpDefine.SCMazeSettle:
                        result = ProtoBuf.Serializer.Deserialize<SCMazeSettle>(m);
                        break;
                    case OpDefine.CSMazeTranser:
                        result = ProtoBuf.Serializer.Deserialize<CSMazeTranser>(m);
                        break;
                    case OpDefine.SCMazeTranser:
                        result = ProtoBuf.Serializer.Deserialize<SCMazeTranser>(m);
                        break;
                    case OpDefine.SCMazeCampingInit:
                        result = ProtoBuf.Serializer.Deserialize<SCMazeCampingInit>(m);
                        break;
                    case OpDefine.CSMazeCampingActionConfirm:
                        result = ProtoBuf.Serializer.Deserialize<CSMazeCampingActionConfirm>(m);
                        break;
                    case OpDefine.SCMazeCampingActionConfirm:
                        result = ProtoBuf.Serializer.Deserialize<SCMazeCampingActionConfirm>(m);
                        break;
                    case OpDefine.SCMazeCampingStart:
                        result = ProtoBuf.Serializer.Deserialize<SCMazeCampingStart>(m);
                        break;
                    case OpDefine.SCMazeCampingEnd:
                        result = ProtoBuf.Serializer.Deserialize<SCMazeCampingEnd>(m);
                        break;
                    case OpDefine.CSMazeGetRewards:
                        result = ProtoBuf.Serializer.Deserialize<CSMazeGetRewards>(m);
                        break;
                    case OpDefine.SCMazeGetRewards:
                        result = ProtoBuf.Serializer.Deserialize<SCMazeGetRewards>(m);
                        break;
                    case OpDefine.CSMazeQuit:
                        result = ProtoBuf.Serializer.Deserialize<CSMazeQuit>(m);
                        break;
                    case OpDefine.SCMazeQuit:
                        result = ProtoBuf.Serializer.Deserialize<SCMazeQuit>(m);
                        break;
                    case OpDefine.SCFogSync:
                        result = ProtoBuf.Serializer.Deserialize<SCFogSync>(m);
                        break;
#endregion
#region 签到 15500-15600
                    case OpDefine.CSGetSignInInfo:
                        result = ProtoBuf.Serializer.Deserialize<CSGetSignInInfo>(m);
                        break;
                    case OpDefine.SCGetSignInInfo:
                        result = ProtoBuf.Serializer.Deserialize<SCGetSignInInfo>(m);
                        break;
                    case OpDefine.CSSignIn:
                        result = ProtoBuf.Serializer.Deserialize<CSSignIn>(m);
                        break;
                    case OpDefine.SCSignIn:
                        result = ProtoBuf.Serializer.Deserialize<SCSignIn>(m);
                        break;
#endregion
#region 消息协议号 19901-20000
                    case OpDefine.SCMoraleSyncData:
                        result = ProtoBuf.Serializer.Deserialize<SCMoraleSyncData>(m);
                        break;
                    case OpDefine.CSMoraleRecover:
                        result = ProtoBuf.Serializer.Deserialize<CSMoraleRecover>(m);
                        break;
                    case OpDefine.SCMoraleRecover:
                        result = ProtoBuf.Serializer.Deserialize<SCMoraleRecover>(m);
                        break;
#endregion
#region 消息协议号 15001
                    case OpDefine.CSCreateMSea:
                        result = ProtoBuf.Serializer.Deserialize<CSCreateMSea>(m);
                        break;
                    case OpDefine.SCCreateMSea:
                        result = ProtoBuf.Serializer.Deserialize<SCCreateMSea>(m);
                        break;
                    case OpDefine.CSMSeaPlayActionThing:
                        result = ProtoBuf.Serializer.Deserialize<CSMSeaPlayActionThing>(m);
                        break;
                    case OpDefine.SCMSeaPlayActionThing:
                        result = ProtoBuf.Serializer.Deserialize<SCMSeaPlayActionThing>(m);
                        break;
                    case OpDefine.SCMSeaBeginHideFight:
                        result = ProtoBuf.Serializer.Deserialize<SCMSeaBeginHideFight>(m);
                        break;
                    case OpDefine.SCMSeaSettleHideFight:
                        result = ProtoBuf.Serializer.Deserialize<SCMSeaSettleHideFight>(m);
                        break;
                    case OpDefine.SCMSeaTreasureAppear:
                        result = ProtoBuf.Serializer.Deserialize<SCMSeaTreasureAppear>(m);
                        break;
                    case OpDefine.CSMSeaOpenTreasureMap:
                        result = ProtoBuf.Serializer.Deserialize<CSMSeaOpenTreasureMap>(m);
                        break;
                    case OpDefine.SCMSeaOpenTreasureMap:
                        result = ProtoBuf.Serializer.Deserialize<SCMSeaOpenTreasureMap>(m);
                        break;
                    case OpDefine.SCMSeaTreasureChipInfo:
                        result = ProtoBuf.Serializer.Deserialize<SCMSeaTreasureChipInfo>(m);
                        break;
                    case OpDefine.CSMSeaFollowView:
                        result = ProtoBuf.Serializer.Deserialize<CSMSeaFollowView>(m);
                        break;
                    case OpDefine.CSMSeaSettle:
                        result = ProtoBuf.Serializer.Deserialize<CSMSeaSettle>(m);
                        break;
                    case OpDefine.SCMSeaSettle:
                        result = ProtoBuf.Serializer.Deserialize<SCMSeaSettle>(m);
                        break;
                    case OpDefine.CSMSeaShopInfo:
                        result = ProtoBuf.Serializer.Deserialize<CSMSeaShopInfo>(m);
                        break;
                    case OpDefine.SCMSeaShopInfo:
                        result = ProtoBuf.Serializer.Deserialize<SCMSeaShopInfo>(m);
                        break;
                    case OpDefine.CSMSeaShopBuy:
                        result = ProtoBuf.Serializer.Deserialize<CSMSeaShopBuy>(m);
                        break;
                    case OpDefine.SCMSeaShopBuy:
                        result = ProtoBuf.Serializer.Deserialize<SCMSeaShopBuy>(m);
                        break;
                    case OpDefine.CSMSeaShopRefresh:
                        result = ProtoBuf.Serializer.Deserialize<CSMSeaShopRefresh>(m);
                        break;
                    case OpDefine.SCMSeaShopRefresh:
                        result = ProtoBuf.Serializer.Deserialize<SCMSeaShopRefresh>(m);
                        break;
                    case OpDefine.CSMSeaTakeItem:
                        result = ProtoBuf.Serializer.Deserialize<CSMSeaTakeItem>(m);
                        break;
                    case OpDefine.SCMSeaTakeItem:
                        result = ProtoBuf.Serializer.Deserialize<SCMSeaTakeItem>(m);
                        break;
                    case OpDefine.CSMSeaMatch:
                        result = ProtoBuf.Serializer.Deserialize<CSMSeaMatch>(m);
                        break;
                    case OpDefine.SCMSeaMatch:
                        result = ProtoBuf.Serializer.Deserialize<SCMSeaMatch>(m);
                        break;
                    case OpDefine.CSMSeaCancelMatch:
                        result = ProtoBuf.Serializer.Deserialize<CSMSeaCancelMatch>(m);
                        break;
                    case OpDefine.SCMSeaCancelMatch:
                        result = ProtoBuf.Serializer.Deserialize<SCMSeaCancelMatch>(m);
                        break;
                    case OpDefine.SSScheduleMSeaMatchUpdate:
                        result = ProtoBuf.Serializer.Deserialize<SSScheduleMSeaMatchUpdate>(m);
                        break;
                    case OpDefine.CSMSeaCreateRoom:
                        result = ProtoBuf.Serializer.Deserialize<CSMSeaCreateRoom>(m);
                        break;
                    case OpDefine.SCMSeaCreateRoom:
                        result = ProtoBuf.Serializer.Deserialize<SCMSeaCreateRoom>(m);
                        break;
                    case OpDefine.CSMSeaInviteFriend:
                        result = ProtoBuf.Serializer.Deserialize<CSMSeaInviteFriend>(m);
                        break;
                    case OpDefine.SCMSeaInviteFriend:
                        result = ProtoBuf.Serializer.Deserialize<SCMSeaInviteFriend>(m);
                        break;
                    case OpDefine.CSMSeaEnterRoom:
                        result = ProtoBuf.Serializer.Deserialize<CSMSeaEnterRoom>(m);
                        break;
                    case OpDefine.SCMSeaUpdateRoomInfo:
                        result = ProtoBuf.Serializer.Deserialize<SCMSeaUpdateRoomInfo>(m);
                        break;
                    case OpDefine.CSMSeaKickPlayer:
                        result = ProtoBuf.Serializer.Deserialize<CSMSeaKickPlayer>(m);
                        break;
                    case OpDefine.SCMSeaKickPlayer:
                        result = ProtoBuf.Serializer.Deserialize<SCMSeaKickPlayer>(m);
                        break;
                    case OpDefine.CSMSeaRoomReady:
                        result = ProtoBuf.Serializer.Deserialize<CSMSeaRoomReady>(m);
                        break;
                    case OpDefine.SCMSeaRoomReady:
                        result = ProtoBuf.Serializer.Deserialize<SCMSeaRoomReady>(m);
                        break;
                    case OpDefine.CSMSeaFormations:
                        result = ProtoBuf.Serializer.Deserialize<CSMSeaFormations>(m);
                        break;
                    case OpDefine.SCMSeaFormations:
                        result = ProtoBuf.Serializer.Deserialize<SCMSeaFormations>(m);
                        break;
                    case OpDefine.CSMSeaUpdateFormation:
                        result = ProtoBuf.Serializer.Deserialize<CSMSeaUpdateFormation>(m);
                        break;
                    case OpDefine.SCMSeaUpdateFormation:
                        result = ProtoBuf.Serializer.Deserialize<SCMSeaUpdateFormation>(m);
                        break;
                    case OpDefine.CSMSeaConfirmInvite:
                        result = ProtoBuf.Serializer.Deserialize<CSMSeaConfirmInvite>(m);
                        break;
                    case OpDefine.SCMSeaConfirmInvite:
                        result = ProtoBuf.Serializer.Deserialize<SCMSeaConfirmInvite>(m);
                        break;
                    case OpDefine.CSMSeaRoomPlayerItems:
                        result = ProtoBuf.Serializer.Deserialize<CSMSeaRoomPlayerItems>(m);
                        break;
                    case OpDefine.SCMSeaRoomPlayerItems:
                        result = ProtoBuf.Serializer.Deserialize<SCMSeaRoomPlayerItems>(m);
                        break;
                    case OpDefine.SCMSeaPosUpdateInfo:
                        result = ProtoBuf.Serializer.Deserialize<SCMSeaPosUpdateInfo>(m);
                        break;
                    case OpDefine.SCMSeaIslandInfo:
                        result = ProtoBuf.Serializer.Deserialize<SCMSeaIslandInfo>(m);
                        break;
                    case OpDefine.SCMSeaInfo:
                        result = ProtoBuf.Serializer.Deserialize<SCMSeaInfo>(m);
                        break;
                    case OpDefine.SCMSeaUpdatePlayerInfo:
                        result = ProtoBuf.Serializer.Deserialize<SCMSeaUpdatePlayerInfo>(m);
                        break;
                    case OpDefine.CSMSeaNewVisualGridId:
                        result = ProtoBuf.Serializer.Deserialize<CSMSeaNewVisualGridId>(m);
                        break;
                    case OpDefine.SCMSeaVisualGridIds:
                        result = ProtoBuf.Serializer.Deserialize<SCMSeaVisualGridIds>(m);
                        break;
                    case OpDefine.SCMSeaAddTreasureChip:
                        result = ProtoBuf.Serializer.Deserialize<SCMSeaAddTreasureChip>(m);
                        break;
                    case OpDefine.SCMSeaNotifyLeave:
                        result = ProtoBuf.Serializer.Deserialize<SCMSeaNotifyLeave>(m);
                        break;
#endregion
#region 在线时长奖励 78201-78250
                    case OpDefine.CSGetOnlineTimeReward:
                        result = ProtoBuf.Serializer.Deserialize<CSGetOnlineTimeReward>(m);
                        break;
                    case OpDefine.SCGetOnlineTimeReward:
                        result = ProtoBuf.Serializer.Deserialize<SCGetOnlineTimeReward>(m);
                        break;
                    case OpDefine.SCOnlineTimeInfo:
                        result = ProtoBuf.Serializer.Deserialize<SCOnlineTimeInfo>(m);
                        break;
#endregion
#region Default37 37000
                    case OpDefine.CSEnterOpenCelebration:
                        result = ProtoBuf.Serializer.Deserialize<CSEnterOpenCelebration>(m);
                        break;
                    case OpDefine.SCEnterOpenCelebration:
                        result = ProtoBuf.Serializer.Deserialize<SCEnterOpenCelebration>(m);
                        break;
                    case OpDefine.CSEnterOpenCelebrationDaily:
                        result = ProtoBuf.Serializer.Deserialize<CSEnterOpenCelebrationDaily>(m);
                        break;
                    case OpDefine.SCEnterOpenCelebrationDaily:
                        result = ProtoBuf.Serializer.Deserialize<SCEnterOpenCelebrationDaily>(m);
                        break;
                    case OpDefine.CSGetDailyLoginReward:
                        result = ProtoBuf.Serializer.Deserialize<CSGetDailyLoginReward>(m);
                        break;
                    case OpDefine.SCGetDailyLoginReward:
                        result = ProtoBuf.Serializer.Deserialize<SCGetDailyLoginReward>(m);
                        break;
                    case OpDefine.CSGetOpenCelebrationDailyPayReward:
                        result = ProtoBuf.Serializer.Deserialize<CSGetOpenCelebrationDailyPayReward>(m);
                        break;
                    case OpDefine.SCGetDailyPayReward:
                        result = ProtoBuf.Serializer.Deserialize<SCGetDailyPayReward>(m);
                        break;
                    case OpDefine.CSBuyOpenCelebrationGift:
                        result = ProtoBuf.Serializer.Deserialize<CSBuyOpenCelebrationGift>(m);
                        break;
                    case OpDefine.SCBuyOpenCelebrationGift:
                        result = ProtoBuf.Serializer.Deserialize<SCBuyOpenCelebrationGift>(m);
                        break;
                    case OpDefine.CSGetOpenCelebrationEndReward:
                        result = ProtoBuf.Serializer.Deserialize<CSGetOpenCelebrationEndReward>(m);
                        break;
                    case OpDefine.SCGetOpenCelebrationEndReward:
                        result = ProtoBuf.Serializer.Deserialize<SCGetOpenCelebrationEndReward>(m);
                        break;
                    case OpDefine.CSGetOpenCelebrationTaskReward:
                        result = ProtoBuf.Serializer.Deserialize<CSGetOpenCelebrationTaskReward>(m);
                        break;
                    case OpDefine.SCGetOpenCelebrationTaskReward:
                        result = ProtoBuf.Serializer.Deserialize<SCGetOpenCelebrationTaskReward>(m);
                        break;
                    case OpDefine.SCPushOpenCelebration:
                        result = ProtoBuf.Serializer.Deserialize<SCPushOpenCelebration>(m);
                        break;
                    case OpDefine.SCPushOpenCelebrationPaySuccess:
                        result = ProtoBuf.Serializer.Deserialize<SCPushOpenCelebrationPaySuccess>(m);
                        break;
#endregion
#region 活动模块，OPPO特权 87501-87600
                    case OpDefine.CSPayPrivilegeInfo:
                        result = ProtoBuf.Serializer.Deserialize<CSPayPrivilegeInfo>(m);
                        break;
                    case OpDefine.SCPayPrivilegeInfo:
                        result = ProtoBuf.Serializer.Deserialize<SCPayPrivilegeInfo>(m);
                        break;
                    case OpDefine.CSPayPrivilegeGet:
                        result = ProtoBuf.Serializer.Deserialize<CSPayPrivilegeGet>(m);
                        break;
                    case OpDefine.SCPayPrivilegeGet:
                        result = ProtoBuf.Serializer.Deserialize<SCPayPrivilegeGet>(m);
                        break;
#endregion
#region 消息协议号 19601-19700
                    case OpDefine.SCDealingRelieveLimit:
                        result = ProtoBuf.Serializer.Deserialize<SCDealingRelieveLimit>(m);
                        break;
                    case OpDefine.CSDealingRelieveLimitConform:
                        result = ProtoBuf.Serializer.Deserialize<CSDealingRelieveLimitConform>(m);
                        break;
                    case OpDefine.SCDealingRelieveLimitConform:
                        result = ProtoBuf.Serializer.Deserialize<SCDealingRelieveLimitConform>(m);
                        break;
                    case OpDefine.SCDealingUnfreezeMoney:
                        result = ProtoBuf.Serializer.Deserialize<SCDealingUnfreezeMoney>(m);
                        break;
                    case OpDefine.CSDealingUnfreezeMoneyConform:
                        result = ProtoBuf.Serializer.Deserialize<CSDealingUnfreezeMoneyConform>(m);
                        break;
                    case OpDefine.SCDealingUnfreezeMoneyConform:
                        result = ProtoBuf.Serializer.Deserialize<SCDealingUnfreezeMoneyConform>(m);
                        break;
                    case OpDefine.SCDealingShowLimit:
                        result = ProtoBuf.Serializer.Deserialize<SCDealingShowLimit>(m);
                        break;
                    case OpDefine.CSDealingRelieveLimit:
                        result = ProtoBuf.Serializer.Deserialize<CSDealingRelieveLimit>(m);
                        break;
                    case OpDefine.CSGetPlayerShopBuyCount:
                        result = ProtoBuf.Serializer.Deserialize<CSGetPlayerShopBuyCount>(m);
                        break;
                    case OpDefine.SCGetPlayerShopBuyCount:
                        result = ProtoBuf.Serializer.Deserialize<SCGetPlayerShopBuyCount>(m);
                        break;
#endregion
#region 消息协议号 11800
                    case OpDefine.CSGetRaidInfo:
                        result = ProtoBuf.Serializer.Deserialize<CSGetRaidInfo>(m);
                        break;
                    case OpDefine.SCGetRaidInfo:
                        result = ProtoBuf.Serializer.Deserialize<SCGetRaidInfo>(m);
                        break;
                    case OpDefine.CSRaidEnterFight:
                        result = ProtoBuf.Serializer.Deserialize<CSRaidEnterFight>(m);
                        break;
                    case OpDefine.SCRaidEnterFight:
                        result = ProtoBuf.Serializer.Deserialize<SCRaidEnterFight>(m);
                        break;
                    case OpDefine.SCRaidFinishFight:
                        result = ProtoBuf.Serializer.Deserialize<SCRaidFinishFight>(m);
                        break;
                    case OpDefine.SCPreEnterRunMapRaid:
                        result = ProtoBuf.Serializer.Deserialize<SCPreEnterRunMapRaid>(m);
                        break;
                    case OpDefine.CSEnterRunMapRaid:
                        result = ProtoBuf.Serializer.Deserialize<CSEnterRunMapRaid>(m);
                        break;
                    case OpDefine.CSEnterMainStoryRaid:
                        result = ProtoBuf.Serializer.Deserialize<CSEnterMainStoryRaid>(m);
                        break;
                    case OpDefine.SCEnterMainStoryRaid:
                        result = ProtoBuf.Serializer.Deserialize<SCEnterMainStoryRaid>(m);
                        break;
                    case OpDefine.SCEnterRunMapRaid:
                        result = ProtoBuf.Serializer.Deserialize<SCEnterRunMapRaid>(m);
                        break;
                    case OpDefine.CSRunMapRaidEnterFight:
                        result = ProtoBuf.Serializer.Deserialize<CSRunMapRaidEnterFight>(m);
                        break;
                    case OpDefine.SCRunMapRaidEnterFight:
                        result = ProtoBuf.Serializer.Deserialize<SCRunMapRaidEnterFight>(m);
                        break;
                    case OpDefine.SCRunMapRaidFightFinish:
                        result = ProtoBuf.Serializer.Deserialize<SCRunMapRaidFightFinish>(m);
                        break;
                    case OpDefine.SCRunMapRaidSettle:
                        result = ProtoBuf.Serializer.Deserialize<SCRunMapRaidSettle>(m);
                        break;
                    case OpDefine.CSOpenRunMapRaidBox:
                        result = ProtoBuf.Serializer.Deserialize<CSOpenRunMapRaidBox>(m);
                        break;
                    case OpDefine.SCOpenRunMapRaidBox:
                        result = ProtoBuf.Serializer.Deserialize<SCOpenRunMapRaidBox>(m);
                        break;
                    case OpDefine.CSSailLogInfo:
                        result = ProtoBuf.Serializer.Deserialize<CSSailLogInfo>(m);
                        break;
                    case OpDefine.SCSailLogInfo:
                        result = ProtoBuf.Serializer.Deserialize<SCSailLogInfo>(m);
                        break;
                    case OpDefine.CSSailLogChapterInfo:
                        result = ProtoBuf.Serializer.Deserialize<CSSailLogChapterInfo>(m);
                        break;
                    case OpDefine.SCSailLogChapterInfo:
                        result = ProtoBuf.Serializer.Deserialize<SCSailLogChapterInfo>(m);
                        break;
                    case OpDefine.CSSailLogEnterFight:
                        result = ProtoBuf.Serializer.Deserialize<CSSailLogEnterFight>(m);
                        break;
                    case OpDefine.SCSailLogEnterFight:
                        result = ProtoBuf.Serializer.Deserialize<SCSailLogEnterFight>(m);
                        break;
                    case OpDefine.SCSailLogEnterSettle:
                        result = ProtoBuf.Serializer.Deserialize<SCSailLogEnterSettle>(m);
                        break;
                    case OpDefine.CSRaidSailLogStarRewardInfo:
                        result = ProtoBuf.Serializer.Deserialize<CSRaidSailLogStarRewardInfo>(m);
                        break;
                    case OpDefine.SCRaidSailLogStarRewardInfo:
                        result = ProtoBuf.Serializer.Deserialize<SCRaidSailLogStarRewardInfo>(m);
                        break;
                    case OpDefine.CSGetRaidSailStarReward:
                        result = ProtoBuf.Serializer.Deserialize<CSGetRaidSailStarReward>(m);
                        break;
                    case OpDefine.SCGetRaidSailStarReward:
                        result = ProtoBuf.Serializer.Deserialize<SCGetRaidSailStarReward>(m);
                        break;
                    case OpDefine.CSGetActivityRaidInfo:
                        result = ProtoBuf.Serializer.Deserialize<CSGetActivityRaidInfo>(m);
                        break;
                    case OpDefine.SCGetActivityRaidInfo:
                        result = ProtoBuf.Serializer.Deserialize<SCGetActivityRaidInfo>(m);
                        break;
                    case OpDefine.CSActivityRaidEnterFight:
                        result = ProtoBuf.Serializer.Deserialize<CSActivityRaidEnterFight>(m);
                        break;
                    case OpDefine.SCActivityRaidEnterFight:
                        result = ProtoBuf.Serializer.Deserialize<SCActivityRaidEnterFight>(m);
                        break;
                    case OpDefine.SCActivityRaidEnterSettle:
                        result = ProtoBuf.Serializer.Deserialize<SCActivityRaidEnterSettle>(m);
                        break;
                    case OpDefine.CSActivityRaidBuy:
                        result = ProtoBuf.Serializer.Deserialize<CSActivityRaidBuy>(m);
                        break;
                    case OpDefine.SCActivityRaidBuy:
                        result = ProtoBuf.Serializer.Deserialize<SCActivityRaidBuy>(m);
                        break;
                    case OpDefine.CSSailLogBuyCount:
                        result = ProtoBuf.Serializer.Deserialize<CSSailLogBuyCount>(m);
                        break;
                    case OpDefine.SCSailLogBuyCount:
                        result = ProtoBuf.Serializer.Deserialize<SCSailLogBuyCount>(m);
                        break;
                    case OpDefine.CSEscortSuccess:
                        result = ProtoBuf.Serializer.Deserialize<CSEscortSuccess>(m);
                        break;
                    case OpDefine.SCEscortSuccess:
                        result = ProtoBuf.Serializer.Deserialize<SCEscortSuccess>(m);
                        break;
                    case OpDefine.CSGetRunMapRaidConditions:
                        result = ProtoBuf.Serializer.Deserialize<CSGetRunMapRaidConditions>(m);
                        break;
                    case OpDefine.SCGetRunMapRaidConditions:
                        result = ProtoBuf.Serializer.Deserialize<SCGetRunMapRaidConditions>(m);
                        break;
                    case OpDefine.CSSweepRaidBuy:
                        result = ProtoBuf.Serializer.Deserialize<CSSweepRaidBuy>(m);
                        break;
                    case OpDefine.SCSweepRaidBuy:
                        result = ProtoBuf.Serializer.Deserialize<SCSweepRaidBuy>(m);
                        break;
                    case OpDefine.CSSweepRaidFastFight:
                        result = ProtoBuf.Serializer.Deserialize<CSSweepRaidFastFight>(m);
                        break;
                    case OpDefine.SCSweepRaidFastFight:
                        result = ProtoBuf.Serializer.Deserialize<SCSweepRaidFastFight>(m);
                        break;
                    case OpDefine.CSActivityRaidGiveUp:
                        result = ProtoBuf.Serializer.Deserialize<CSActivityRaidGiveUp>(m);
                        break;
                    case OpDefine.SCActivityRaidGiveUp:
                        result = ProtoBuf.Serializer.Deserialize<SCActivityRaidGiveUp>(m);
                        break;
                    case OpDefine.CSSweepRaidStartRewardInfo:
                        result = ProtoBuf.Serializer.Deserialize<CSSweepRaidStartRewardInfo>(m);
                        break;
                    case OpDefine.SCSweepRaidStartRewardInfo:
                        result = ProtoBuf.Serializer.Deserialize<SCSweepRaidStartRewardInfo>(m);
                        break;
                    case OpDefine.CSSweepRaidRequeReward:
                        result = ProtoBuf.Serializer.Deserialize<CSSweepRaidRequeReward>(m);
                        break;
                    case OpDefine.SCSweepRaidRequeReward:
                        result = ProtoBuf.Serializer.Deserialize<SCSweepRaidRequeReward>(m);
                        break;
                    case OpDefine.CSActivityRaidQuickFight:
                        result = ProtoBuf.Serializer.Deserialize<CSActivityRaidQuickFight>(m);
                        break;
                    case OpDefine.SCActivityRaidQuickFight:
                        result = ProtoBuf.Serializer.Deserialize<SCActivityRaidQuickFight>(m);
                        break;
                    case OpDefine.CSRaidFinishArrive:
                        result = ProtoBuf.Serializer.Deserialize<CSRaidFinishArrive>(m);
                        break;
                    case OpDefine.SCRaidFinishArrive:
                        result = ProtoBuf.Serializer.Deserialize<SCRaidFinishArrive>(m);
                        break;
                    case OpDefine.CSRaidHpChange:
                        result = ProtoBuf.Serializer.Deserialize<CSRaidHpChange>(m);
                        break;
                    case OpDefine.SCRaidHpChange:
                        result = ProtoBuf.Serializer.Deserialize<SCRaidHpChange>(m);
                        break;
#endregion
#region 排行榜 14101-14200
                    case OpDefine.CSGetRankData:
                        result = ProtoBuf.Serializer.Deserialize<CSGetRankData>(m);
                        break;
                    case OpDefine.SCGetRankData:
                        result = ProtoBuf.Serializer.Deserialize<SCGetRankData>(m);
                        break;
                    case OpDefine.CSGetRankTabs:
                        result = ProtoBuf.Serializer.Deserialize<CSGetRankTabs>(m);
                        break;
                    case OpDefine.SCGetRankTabs:
                        result = ProtoBuf.Serializer.Deserialize<SCGetRankTabs>(m);
                        break;
#endregion
#region 活动模块，包括活动，商店，抽卡 11901-12000
                    case OpDefine.CSGetRecruitInfo:
                        result = ProtoBuf.Serializer.Deserialize<CSGetRecruitInfo>(m);
                        break;
                    case OpDefine.SCGetRecruitInfo:
                        result = ProtoBuf.Serializer.Deserialize<SCGetRecruitInfo>(m);
                        break;
                    case OpDefine.CSDoRecruit:
                        result = ProtoBuf.Serializer.Deserialize<CSDoRecruit>(m);
                        break;
                    case OpDefine.SCDoRecruit:
                        result = ProtoBuf.Serializer.Deserialize<SCDoRecruit>(m);
                        break;
                    case OpDefine.CSGetAdditionalReward:
                        result = ProtoBuf.Serializer.Deserialize<CSGetAdditionalReward>(m);
                        break;
                    case OpDefine.SCGetAdditionalReward:
                        result = ProtoBuf.Serializer.Deserialize<SCGetAdditionalReward>(m);
                        break;
                    case OpDefine.CSGetTimeLimitExchangeReward:
                        result = ProtoBuf.Serializer.Deserialize<CSGetTimeLimitExchangeReward>(m);
                        break;
                    case OpDefine.SCGetTimeLimitExchangeReward:
                        result = ProtoBuf.Serializer.Deserialize<SCGetTimeLimitExchangeReward>(m);
                        break;
                    case OpDefine.CSGetSpecialRecruitExchangeReward:
                        result = ProtoBuf.Serializer.Deserialize<CSGetSpecialRecruitExchangeReward>(m);
                        break;
                    case OpDefine.SCGetSpecialRecruitExchangeReward:
                        result = ProtoBuf.Serializer.Deserialize<SCGetSpecialRecruitExchangeReward>(m);
                        break;
#endregion
#region 消息协议号 78251-78300
                    case OpDefine.CSGetReputationInfo:
                        result = ProtoBuf.Serializer.Deserialize<CSGetReputationInfo>(m);
                        break;
                    case OpDefine.SCGetReputationInfo:
                        result = ProtoBuf.Serializer.Deserialize<SCGetReputationInfo>(m);
                        break;
                    case OpDefine.CSGetReputationReward:
                        result = ProtoBuf.Serializer.Deserialize<CSGetReputationReward>(m);
                        break;
                    case OpDefine.SCGetReputationReward:
                        result = ProtoBuf.Serializer.Deserialize<SCGetReputationReward>(m);
                        break;
                    case OpDefine.SCReputationUpdate:
                        result = ProtoBuf.Serializer.Deserialize<SCReputationUpdate>(m);
                        break;
#endregion
#region 消息协议号 88001-88100
                    case OpDefine.CSGetResourceBackList:
                        result = ProtoBuf.Serializer.Deserialize<CSGetResourceBackList>(m);
                        break;
                    case OpDefine.SCGetResourceBackList:
                        result = ProtoBuf.Serializer.Deserialize<SCGetResourceBackList>(m);
                        break;
                    case OpDefine.CSGetResourceBack:
                        result = ProtoBuf.Serializer.Deserialize<CSGetResourceBack>(m);
                        break;
                    case OpDefine.SCGetResourceBack:
                        result = ProtoBuf.Serializer.Deserialize<SCGetResourceBack>(m);
                        break;
#endregion
#region 消息协议号 86001-87000
                    case OpDefine.CSEnterPlayerReturn:
                        result = ProtoBuf.Serializer.Deserialize<CSEnterPlayerReturn>(m);
                        break;
                    case OpDefine.SCEnterPlayerReturn:
                        result = ProtoBuf.Serializer.Deserialize<SCEnterPlayerReturn>(m);
                        break;
                    case OpDefine.CSEnterPlayerReturnLogin:
                        result = ProtoBuf.Serializer.Deserialize<CSEnterPlayerReturnLogin>(m);
                        break;
                    case OpDefine.SCEnterPlayerReturnLogin:
                        result = ProtoBuf.Serializer.Deserialize<SCEnterPlayerReturnLogin>(m);
                        break;
                    case OpDefine.CSPlayerReturnLoginReward:
                        result = ProtoBuf.Serializer.Deserialize<CSPlayerReturnLoginReward>(m);
                        break;
                    case OpDefine.SCPlayerReturnLoginReward:
                        result = ProtoBuf.Serializer.Deserialize<SCPlayerReturnLoginReward>(m);
                        break;
                    case OpDefine.CSEnterPlayerReturnPay:
                        result = ProtoBuf.Serializer.Deserialize<CSEnterPlayerReturnPay>(m);
                        break;
                    case OpDefine.SCEnterPlayerReturnPay:
                        result = ProtoBuf.Serializer.Deserialize<SCEnterPlayerReturnPay>(m);
                        break;
                    case OpDefine.CSPlayerReturnPayReward:
                        result = ProtoBuf.Serializer.Deserialize<CSPlayerReturnPayReward>(m);
                        break;
                    case OpDefine.SCPlayerReturnPayReward:
                        result = ProtoBuf.Serializer.Deserialize<SCPlayerReturnPayReward>(m);
                        break;
                    case OpDefine.CSEnterPlayerReturnGift:
                        result = ProtoBuf.Serializer.Deserialize<CSEnterPlayerReturnGift>(m);
                        break;
                    case OpDefine.SCEnterPlayerReturnGift:
                        result = ProtoBuf.Serializer.Deserialize<SCEnterPlayerReturnGift>(m);
                        break;
                    case OpDefine.CSBuyPlayerReturnGift:
                        result = ProtoBuf.Serializer.Deserialize<CSBuyPlayerReturnGift>(m);
                        break;
                    case OpDefine.SCBuyPlayerReturnGift:
                        result = ProtoBuf.Serializer.Deserialize<SCBuyPlayerReturnGift>(m);
                        break;
                    case OpDefine.CSGetPlayerReturnExpBuffInfo:
                        result = ProtoBuf.Serializer.Deserialize<CSGetPlayerReturnExpBuffInfo>(m);
                        break;
                    case OpDefine.SCGetPlayerReturnExpBuffInfo:
                        result = ProtoBuf.Serializer.Deserialize<SCGetPlayerReturnExpBuffInfo>(m);
                        break;
#endregion
#region 消息协议号 2501
                    case OpDefine.CSSceneInit:
                        result = ProtoBuf.Serializer.Deserialize<CSSceneInit>(m);
                        break;
                    case OpDefine.SCSceneInit:
                        result = ProtoBuf.Serializer.Deserialize<SCSceneInit>(m);
                        break;
                    case OpDefine.CSSceneQueryPlayer:
                        result = ProtoBuf.Serializer.Deserialize<CSSceneQueryPlayer>(m);
                        break;
                    case OpDefine.SCSceneQueryPlayer:
                        result = ProtoBuf.Serializer.Deserialize<SCSceneQueryPlayer>(m);
                        break;
                    case OpDefine.CSSceneQueryMonster:
                        result = ProtoBuf.Serializer.Deserialize<CSSceneQueryMonster>(m);
                        break;
                    case OpDefine.SCSceneQueryMonster:
                        result = ProtoBuf.Serializer.Deserialize<SCSceneQueryMonster>(m);
                        break;
                    case OpDefine.CSSceneQueryNpc:
                        result = ProtoBuf.Serializer.Deserialize<CSSceneQueryNpc>(m);
                        break;
                    case OpDefine.SCSceneQueryNpc:
                        result = ProtoBuf.Serializer.Deserialize<SCSceneQueryNpc>(m);
                        break;
                    case OpDefine.CSSceneQueryResource:
                        result = ProtoBuf.Serializer.Deserialize<CSSceneQueryResource>(m);
                        break;
                    case OpDefine.SCSceneQueryResource:
                        result = ProtoBuf.Serializer.Deserialize<SCSceneQueryResource>(m);
                        break;
                    case OpDefine.CSScenePreBattle:
                        result = ProtoBuf.Serializer.Deserialize<CSScenePreBattle>(m);
                        break;
                    case OpDefine.SCScenePreBattle:
                        result = ProtoBuf.Serializer.Deserialize<SCScenePreBattle>(m);
                        break;
                    case OpDefine.SCSceneBattleResult:
                        result = ProtoBuf.Serializer.Deserialize<SCSceneBattleResult>(m);
                        break;
                    case OpDefine.SCScenePvPBattleResult:
                        result = ProtoBuf.Serializer.Deserialize<SCScenePvPBattleResult>(m);
                        break;
                    case OpDefine.CSSceneGather:
                        result = ProtoBuf.Serializer.Deserialize<CSSceneGather>(m);
                        break;
                    case OpDefine.SCSceneGather:
                        result = ProtoBuf.Serializer.Deserialize<SCSceneGather>(m);
                        break;
                    case OpDefine.CSSceneQueryObject:
                        result = ProtoBuf.Serializer.Deserialize<CSSceneQueryObject>(m);
                        break;
                    case OpDefine.SCSceneQueryObject:
                        result = ProtoBuf.Serializer.Deserialize<SCSceneQueryObject>(m);
                        break;
                    case OpDefine.SCSceneObjectState:
                        result = ProtoBuf.Serializer.Deserialize<SCSceneObjectState>(m);
                        break;
                    case OpDefine.CSSceneChangeAttackMode:
                        result = ProtoBuf.Serializer.Deserialize<CSSceneChangeAttackMode>(m);
                        break;
                    case OpDefine.SCSceneChangeAttackMode:
                        result = ProtoBuf.Serializer.Deserialize<SCSceneChangeAttackMode>(m);
                        break;
                    case OpDefine.CSSceneRevive:
                        result = ProtoBuf.Serializer.Deserialize<CSSceneRevive>(m);
                        break;
                    case OpDefine.SCSceneRevive:
                        result = ProtoBuf.Serializer.Deserialize<SCSceneRevive>(m);
                        break;
                    case OpDefine.CSPlayerPlotTransfer:
                        result = ProtoBuf.Serializer.Deserialize<CSPlayerPlotTransfer>(m);
                        break;
                    case OpDefine.SCPlayerPlotTransfer:
                        result = ProtoBuf.Serializer.Deserialize<SCPlayerPlotTransfer>(m);
                        break;
                    case OpDefine.SCSceneProUpdate:
                        result = ProtoBuf.Serializer.Deserialize<SCSceneProUpdate>(m);
                        break;
                    case OpDefine.SCSceneGatherResult:
                        result = ProtoBuf.Serializer.Deserialize<SCSceneGatherResult>(m);
                        break;
                    case OpDefine.CSPlayerPlotEnd:
                        result = ProtoBuf.Serializer.Deserialize<CSPlayerPlotEnd>(m);
                        break;
                    case OpDefine.SCPlayerPlotEnd:
                        result = ProtoBuf.Serializer.Deserialize<SCPlayerPlotEnd>(m);
                        break;
                    case OpDefine.CSPlayerPlotHistory:
                        result = ProtoBuf.Serializer.Deserialize<CSPlayerPlotHistory>(m);
                        break;
                    case OpDefine.SCPlayerPlotHistory:
                        result = ProtoBuf.Serializer.Deserialize<SCPlayerPlotHistory>(m);
                        break;
                    case OpDefine.CSPlayerPlotStart:
                        result = ProtoBuf.Serializer.Deserialize<CSPlayerPlotStart>(m);
                        break;
                    case OpDefine.SCPlayerPlotStart:
                        result = ProtoBuf.Serializer.Deserialize<SCPlayerPlotStart>(m);
                        break;
                    case OpDefine.CSDialogInteraction:
                        result = ProtoBuf.Serializer.Deserialize<CSDialogInteraction>(m);
                        break;
                    case OpDefine.SCDialogInteraction:
                        result = ProtoBuf.Serializer.Deserialize<SCDialogInteraction>(m);
                        break;
                    case OpDefine.CSGetOpenWorldMaps:
                        result = ProtoBuf.Serializer.Deserialize<CSGetOpenWorldMaps>(m);
                        break;
                    case OpDefine.SCGetOpenWorldMaps:
                        result = ProtoBuf.Serializer.Deserialize<SCGetOpenWorldMaps>(m);
                        break;
                    case OpDefine.CSSceneOpenChest:
                        result = ProtoBuf.Serializer.Deserialize<CSSceneOpenChest>(m);
                        break;
                    case OpDefine.SCSceneOpenChest:
                        result = ProtoBuf.Serializer.Deserialize<SCSceneOpenChest>(m);
                        break;
                    case OpDefine.SCSceneOpenChestResult:
                        result = ProtoBuf.Serializer.Deserialize<SCSceneOpenChestResult>(m);
                        break;
                    case OpDefine.CSSceneBot:
                        result = ProtoBuf.Serializer.Deserialize<CSSceneBot>(m);
                        break;
                    case OpDefine.SCSceneBot:
                        result = ProtoBuf.Serializer.Deserialize<SCSceneBot>(m);
                        break;
                    case OpDefine.SCSyncSceneInfo:
                        result = ProtoBuf.Serializer.Deserialize<SCSyncSceneInfo>(m);
                        break;
                    case OpDefine.SCSyncKillPlayerInfo:
                        result = ProtoBuf.Serializer.Deserialize<SCSyncKillPlayerInfo>(m);
                        break;
                    case OpDefine.SCRecoverHp:
                        result = ProtoBuf.Serializer.Deserialize<SCRecoverHp>(m);
                        break;
                    case OpDefine.SSResetPlayerLoc:
                        result = ProtoBuf.Serializer.Deserialize<SSResetPlayerLoc>(m);
                        break;
                    case OpDefine.CSSceneCancelState:
                        result = ProtoBuf.Serializer.Deserialize<CSSceneCancelState>(m);
                        break;
                    case OpDefine.CSSceneGetBotInfo:
                        result = ProtoBuf.Serializer.Deserialize<CSSceneGetBotInfo>(m);
                        break;
                    case OpDefine.SCSceneGetBotInfo:
                        result = ProtoBuf.Serializer.Deserialize<SCSceneGetBotInfo>(m);
                        break;
                    case OpDefine.CSSceneClickObject:
                        result = ProtoBuf.Serializer.Deserialize<CSSceneClickObject>(m);
                        break;
                    case OpDefine.SCSceneClickObject:
                        result = ProtoBuf.Serializer.Deserialize<SCSceneClickObject>(m);
                        break;
                    case OpDefine.SCSceneObjectAction:
                        result = ProtoBuf.Serializer.Deserialize<SCSceneObjectAction>(m);
                        break;
                    case OpDefine.CSResetPlayerLoc:
                        result = ProtoBuf.Serializer.Deserialize<CSResetPlayerLoc>(m);
                        break;
                    case OpDefine.SCResetPlayerLoc:
                        result = ProtoBuf.Serializer.Deserialize<SCResetPlayerLoc>(m);
                        break;
                    case OpDefine.CSSceneGameGather:
                        result = ProtoBuf.Serializer.Deserialize<CSSceneGameGather>(m);
                        break;
                    case OpDefine.SCSceneGameGather:
                        result = ProtoBuf.Serializer.Deserialize<SCSceneGameGather>(m);
                        break;
                    case OpDefine.CSSceneTriggerEvent:
                        result = ProtoBuf.Serializer.Deserialize<CSSceneTriggerEvent>(m);
                        break;
                    case OpDefine.SCSceneTriggerEvent:
                        result = ProtoBuf.Serializer.Deserialize<SCSceneTriggerEvent>(m);
                        break;
                    case OpDefine.CSSceneGetAllMapIds:
                        result = ProtoBuf.Serializer.Deserialize<CSSceneGetAllMapIds>(m);
                        break;
                    case OpDefine.SCSceneGetAllMapIds:
                        result = ProtoBuf.Serializer.Deserialize<SCSceneGetAllMapIds>(m);
                        break;
                    case OpDefine.CSCheckCommonCondition:
                        result = ProtoBuf.Serializer.Deserialize<CSCheckCommonCondition>(m);
                        break;
                    case OpDefine.SCCheckCommonCondition:
                        result = ProtoBuf.Serializer.Deserialize<SCCheckCommonCondition>(m);
                        break;
                    case OpDefine.SSSceneRefreshResource:
                        result = ProtoBuf.Serializer.Deserialize<SSSceneRefreshResource>(m);
                        break;
#endregion
#region 消息协议号 15201
                    case OpDefine.SCGetAllExistSceneBuff:
                        result = ProtoBuf.Serializer.Deserialize<SCGetAllExistSceneBuff>(m);
                        break;
                    case OpDefine.CSChangeBuffs:
                        result = ProtoBuf.Serializer.Deserialize<CSChangeBuffs>(m);
                        break;
                    case OpDefine.SCChangeBuffs:
                        result = ProtoBuf.Serializer.Deserialize<SCChangeBuffs>(m);
                        break;
#endregion
#region 消息协议号 22201
                    case OpDefine.CSGetAllShipInfo:
                        result = ProtoBuf.Serializer.Deserialize<CSGetAllShipInfo>(m);
                        break;
                    case OpDefine.SCGetAllShipInfo:
                        result = ProtoBuf.Serializer.Deserialize<SCGetAllShipInfo>(m);
                        break;
                    case OpDefine.CSShipCombine:
                        result = ProtoBuf.Serializer.Deserialize<CSShipCombine>(m);
                        break;
                    case OpDefine.SCShipCombine:
                        result = ProtoBuf.Serializer.Deserialize<SCShipCombine>(m);
                        break;
                    case OpDefine.CSReceiveShip:
                        result = ProtoBuf.Serializer.Deserialize<CSReceiveShip>(m);
                        break;
                    case OpDefine.SCReceiveShip:
                        result = ProtoBuf.Serializer.Deserialize<SCReceiveShip>(m);
                        break;
                    case OpDefine.CSSetShipState:
                        result = ProtoBuf.Serializer.Deserialize<CSSetShipState>(m);
                        break;
                    case OpDefine.SCSetShipState:
                        result = ProtoBuf.Serializer.Deserialize<SCSetShipState>(m);
                        break;
                    case OpDefine.SCSyncShipInfos:
                        result = ProtoBuf.Serializer.Deserialize<SCSyncShipInfos>(m);
                        break;
                    case OpDefine.CSShipReform:
                        result = ProtoBuf.Serializer.Deserialize<CSShipReform>(m);
                        break;
                    case OpDefine.SCShipReform:
                        result = ProtoBuf.Serializer.Deserialize<SCShipReform>(m);
                        break;
                    case OpDefine.CSGetTradeDetail:
                        result = ProtoBuf.Serializer.Deserialize<CSGetTradeDetail>(m);
                        break;
                    case OpDefine.SCGetTradeDetail:
                        result = ProtoBuf.Serializer.Deserialize<SCGetTradeDetail>(m);
                        break;
                    case OpDefine.CSRefreshTradeList:
                        result = ProtoBuf.Serializer.Deserialize<CSRefreshTradeList>(m);
                        break;
                    case OpDefine.SCRefreshTradeList:
                        result = ProtoBuf.Serializer.Deserialize<SCRefreshTradeList>(m);
                        break;
                    case OpDefine.CSGetMyTradeList:
                        result = ProtoBuf.Serializer.Deserialize<CSGetMyTradeList>(m);
                        break;
                    case OpDefine.SCGetMyTradeList:
                        result = ProtoBuf.Serializer.Deserialize<SCGetMyTradeList>(m);
                        break;
                    case OpDefine.CSGetMysteryTradeList:
                        result = ProtoBuf.Serializer.Deserialize<CSGetMysteryTradeList>(m);
                        break;
                    case OpDefine.SCGetMysteryTradeList:
                        result = ProtoBuf.Serializer.Deserialize<SCGetMysteryTradeList>(m);
                        break;
                    case OpDefine.CSGetSurveyTradeList:
                        result = ProtoBuf.Serializer.Deserialize<CSGetSurveyTradeList>(m);
                        break;
                    case OpDefine.SCGetSurveyTradeList:
                        result = ProtoBuf.Serializer.Deserialize<SCGetSurveyTradeList>(m);
                        break;
                    case OpDefine.CSGoOut:
                        result = ProtoBuf.Serializer.Deserialize<CSGoOut>(m);
                        break;
                    case OpDefine.SCGoOut:
                        result = ProtoBuf.Serializer.Deserialize<SCGoOut>(m);
                        break;
                    case OpDefine.CSRecall:
                        result = ProtoBuf.Serializer.Deserialize<CSRecall>(m);
                        break;
                    case OpDefine.SCRecall:
                        result = ProtoBuf.Serializer.Deserialize<SCRecall>(m);
                        break;
                    case OpDefine.CSFastComplete:
                        result = ProtoBuf.Serializer.Deserialize<CSFastComplete>(m);
                        break;
                    case OpDefine.SCFastComplete:
                        result = ProtoBuf.Serializer.Deserialize<SCFastComplete>(m);
                        break;
                    case OpDefine.CSGetRewards:
                        result = ProtoBuf.Serializer.Deserialize<CSGetRewards>(m);
                        break;
                    case OpDefine.SCGetRewards:
                        result = ProtoBuf.Serializer.Deserialize<SCGetRewards>(m);
                        break;
                    case OpDefine.SCSyncShipTradeLevel:
                        result = ProtoBuf.Serializer.Deserialize<SCSyncShipTradeLevel>(m);
                        break;
                    case OpDefine.CSShareMysteryTask:
                        result = ProtoBuf.Serializer.Deserialize<CSShareMysteryTask>(m);
                        break;
                    case OpDefine.SCShareMysteryTask:
                        result = ProtoBuf.Serializer.Deserialize<SCShareMysteryTask>(m);
                        break;
                    case OpDefine.SCSyncShipTradeTask:
                        result = ProtoBuf.Serializer.Deserialize<SCSyncShipTradeTask>(m);
                        break;
                    case OpDefine.SCSyncInfoVal:
                        result = ProtoBuf.Serializer.Deserialize<SCSyncInfoVal>(m);
                        break;
                    case OpDefine.CSAddFood:
                        result = ProtoBuf.Serializer.Deserialize<CSAddFood>(m);
                        break;
                    case OpDefine.SCAddFood:
                        result = ProtoBuf.Serializer.Deserialize<SCAddFood>(m);
                        break;
                    case OpDefine.CSExchangeRefTimes:
                        result = ProtoBuf.Serializer.Deserialize<CSExchangeRefTimes>(m);
                        break;
                    case OpDefine.SCExchangeRefTimes:
                        result = ProtoBuf.Serializer.Deserialize<SCExchangeRefTimes>(m);
                        break;
                    case OpDefine.CSSetShipFleet:
                        result = ProtoBuf.Serializer.Deserialize<CSSetShipFleet>(m);
                        break;
                    case OpDefine.SCSetShipFleet:
                        result = ProtoBuf.Serializer.Deserialize<SCSetShipFleet>(m);
                        break;
                    case OpDefine.CSGetMySharedTradeList:
                        result = ProtoBuf.Serializer.Deserialize<CSGetMySharedTradeList>(m);
                        break;
                    case OpDefine.SCGetMySharedTradeList:
                        result = ProtoBuf.Serializer.Deserialize<SCGetMySharedTradeList>(m);
                        break;
                    case OpDefine.CSGetMysticalTradeInfo:
                        result = ProtoBuf.Serializer.Deserialize<CSGetMysticalTradeInfo>(m);
                        break;
                    case OpDefine.SCGetMysticalTradeInfo:
                        result = ProtoBuf.Serializer.Deserialize<SCGetMysticalTradeInfo>(m);
                        break;
                    case OpDefine.CSGetMysticalTradeReward:
                        result = ProtoBuf.Serializer.Deserialize<CSGetMysticalTradeReward>(m);
                        break;
                    case OpDefine.SCGetMysticalTradeReward:
                        result = ProtoBuf.Serializer.Deserialize<SCGetMysticalTradeReward>(m);
                        break;
                    case OpDefine.CSGetAllRewards:
                        result = ProtoBuf.Serializer.Deserialize<CSGetAllRewards>(m);
                        break;
                    case OpDefine.SCGetAllRewards:
                        result = ProtoBuf.Serializer.Deserialize<SCGetAllRewards>(m);
                        break;
#endregion
#region 消息协议号 3801
                    case OpDefine.CSBuyArenaShopItem:
                        result = ProtoBuf.Serializer.Deserialize<CSBuyArenaShopItem>(m);
                        break;
                    case OpDefine.CSBuyIntegralArenaItem:
                        result = ProtoBuf.Serializer.Deserialize<CSBuyIntegralArenaItem>(m);
                        break;
#endregion
#region 社交空间消息协议号 80001-81000
                    case OpDefine.SCSocialLoginTokenNotice:
                        result = ProtoBuf.Serializer.Deserialize<SCSocialLoginTokenNotice>(m);
                        break;
                    case OpDefine.SCSocialFriendSendFlowerNotice:
                        result = ProtoBuf.Serializer.Deserialize<SCSocialFriendSendFlowerNotice>(m);
                        break;
#endregion
#region 开关管理模块 17401-17500
                    case OpDefine.CSGetSwitchStates:
                        result = ProtoBuf.Serializer.Deserialize<CSGetSwitchStates>(m);
                        break;
                    case OpDefine.SCGetSwitchStates:
                        result = ProtoBuf.Serializer.Deserialize<SCGetSwitchStates>(m);
                        break;
#endregion
#region 消息协议号 13001
                    case OpDefine.SCSyncItemBase:
                        result = ProtoBuf.Serializer.Deserialize<SCSyncItemBase>(m);
                        break;
                    case OpDefine.SCSyncHero:
                        result = ProtoBuf.Serializer.Deserialize<SCSyncHero>(m);
                        break;
                    case OpDefine.SCSyncPlayer:
                        result = ProtoBuf.Serializer.Deserialize<SCSyncPlayer>(m);
                        break;
#endregion
#region 消息协议号 14301
                    case OpDefine.CSGetSystemSettings:
                        result = ProtoBuf.Serializer.Deserialize<CSGetSystemSettings>(m);
                        break;
                    case OpDefine.SCSystemSettings:
                        result = ProtoBuf.Serializer.Deserialize<SCSystemSettings>(m);
                        break;
                    case OpDefine.CSUpdateSystemSettings:
                        result = ProtoBuf.Serializer.Deserialize<CSUpdateSystemSettings>(m);
                        break;
#endregion
#region 任务相关 11401-11499
                    case OpDefine.CSTaskEnterFight:
                        result = ProtoBuf.Serializer.Deserialize<CSTaskEnterFight>(m);
                        break;
                    case OpDefine.SCTaskEnterFight:
                        result = ProtoBuf.Serializer.Deserialize<SCTaskEnterFight>(m);
                        break;
                    case OpDefine.SCTaskEnterSettle:
                        result = ProtoBuf.Serializer.Deserialize<SCTaskEnterSettle>(m);
                        break;
                    case OpDefine.SCNoticeClientHeroChange:
                        result = ProtoBuf.Serializer.Deserialize<SCNoticeClientHeroChange>(m);
                        break;
                    case OpDefine.CSGetDailyRecommendation:
                        result = ProtoBuf.Serializer.Deserialize<CSGetDailyRecommendation>(m);
                        break;
                    case OpDefine.SCGetDailyRecommendation:
                        result = ProtoBuf.Serializer.Deserialize<SCGetDailyRecommendation>(m);
                        break;
                    case OpDefine.SCUpdateDailyRecommendation:
                        result = ProtoBuf.Serializer.Deserialize<SCUpdateDailyRecommendation>(m);
                        break;
                    case OpDefine.CSAcceptDailyLoopTask:
                        result = ProtoBuf.Serializer.Deserialize<CSAcceptDailyLoopTask>(m);
                        break;
                    case OpDefine.SCAcceptDailyLoopTask:
                        result = ProtoBuf.Serializer.Deserialize<SCAcceptDailyLoopTask>(m);
                        break;
                    case OpDefine.SCPushDailyTaskRewardNotice:
                        result = ProtoBuf.Serializer.Deserialize<SCPushDailyTaskRewardNotice>(m);
                        break;
                    case OpDefine.CSTaskHandOverBagItem:
                        result = ProtoBuf.Serializer.Deserialize<CSTaskHandOverBagItem>(m);
                        break;
                    case OpDefine.SCTaskHandOverBagItem:
                        result = ProtoBuf.Serializer.Deserialize<SCTaskHandOverBagItem>(m);
                        break;
                    case OpDefine.CSEnterTaskRunRaidFight:
                        result = ProtoBuf.Serializer.Deserialize<CSEnterTaskRunRaidFight>(m);
                        break;
                    case OpDefine.SCEnterTaskRunRaidFight:
                        result = ProtoBuf.Serializer.Deserialize<SCEnterTaskRunRaidFight>(m);
                        break;
                    case OpDefine.CSDailyTaskSweep:
                        result = ProtoBuf.Serializer.Deserialize<CSDailyTaskSweep>(m);
                        break;
                    case OpDefine.SCDailyTaskSweep:
                        result = ProtoBuf.Serializer.Deserialize<SCDailyTaskSweep>(m);
                        break;
#endregion
#region 称号 14401-14500
                    case OpDefine.CSTitleInfo:
                        result = ProtoBuf.Serializer.Deserialize<CSTitleInfo>(m);
                        break;
                    case OpDefine.SCTitleInfo:
                        result = ProtoBuf.Serializer.Deserialize<SCTitleInfo>(m);
                        break;
                    case OpDefine.CSSwitchTitle:
                        result = ProtoBuf.Serializer.Deserialize<CSSwitchTitle>(m);
                        break;
                    case OpDefine.SCSwitchTitle:
                        result = ProtoBuf.Serializer.Deserialize<SCSwitchTitle>(m);
                        break;
                    case OpDefine.CSChangeTitleState:
                        result = ProtoBuf.Serializer.Deserialize<CSChangeTitleState>(m);
                        break;
                    case OpDefine.SCChangeTitleState:
                        result = ProtoBuf.Serializer.Deserialize<SCChangeTitleState>(m);
                        break;
                    case OpDefine.SSAddTitle:
                        result = ProtoBuf.Serializer.Deserialize<SSAddTitle>(m);
                        break;
                    case OpDefine.SCOnTitleChanged:
                        result = ProtoBuf.Serializer.Deserialize<SCOnTitleChanged>(m);
                        break;
#endregion
#region 消息协议号 88251-88350
                    case OpDefine.CSEnterSeaArea:
                        result = ProtoBuf.Serializer.Deserialize<CSEnterSeaArea>(m);
                        break;
                    case OpDefine.SCEnterSeaArea:
                        result = ProtoBuf.Serializer.Deserialize<SCEnterSeaArea>(m);
                        break;
                    case OpDefine.CSRefreshSelectItem:
                        result = ProtoBuf.Serializer.Deserialize<CSRefreshSelectItem>(m);
                        break;
                    case OpDefine.SCRefreshSelectItem:
                        result = ProtoBuf.Serializer.Deserialize<SCRefreshSelectItem>(m);
                        break;
                    case OpDefine.CSShipOut:
                        result = ProtoBuf.Serializer.Deserialize<CSShipOut>(m);
                        break;
                    case OpDefine.SCShipOut:
                        result = ProtoBuf.Serializer.Deserialize<SCShipOut>(m);
                        break;
                    case OpDefine.CSSearch:
                        result = ProtoBuf.Serializer.Deserialize<CSSearch>(m);
                        break;
                    case OpDefine.SCSearch:
                        result = ProtoBuf.Serializer.Deserialize<SCSearch>(m);
                        break;
                    case OpDefine.CSMissionDispatch:
                        result = ProtoBuf.Serializer.Deserialize<CSMissionDispatch>(m);
                        break;
                    case OpDefine.SCMissionDispatch:
                        result = ProtoBuf.Serializer.Deserialize<SCMissionDispatch>(m);
                        break;
                    case OpDefine.CSGetMissionReward:
                        result = ProtoBuf.Serializer.Deserialize<CSGetMissionReward>(m);
                        break;
                    case OpDefine.SCGetMissionReward:
                        result = ProtoBuf.Serializer.Deserialize<SCGetMissionReward>(m);
                        break;
                    case OpDefine.CSGetSelectedReward:
                        result = ProtoBuf.Serializer.Deserialize<CSGetSelectedReward>(m);
                        break;
                    case OpDefine.SCGetSelectedReward:
                        result = ProtoBuf.Serializer.Deserialize<SCGetSelectedReward>(m);
                        break;
                    case OpDefine.CSShipReturn:
                        result = ProtoBuf.Serializer.Deserialize<CSShipReturn>(m);
                        break;
                    case OpDefine.SCShipReturn:
                        result = ProtoBuf.Serializer.Deserialize<SCShipReturn>(m);
                        break;
                    case OpDefine.CSShipFight:
                        result = ProtoBuf.Serializer.Deserialize<CSShipFight>(m);
                        break;
                    case OpDefine.SCShipFight:
                        result = ProtoBuf.Serializer.Deserialize<SCShipFight>(m);
                        break;
                    case OpDefine.SCShipFightSettle:
                        result = ProtoBuf.Serializer.Deserialize<SCShipFightSettle>(m);
                        break;
                    case OpDefine.CSLeaveTreasure:
                        result = ProtoBuf.Serializer.Deserialize<CSLeaveTreasure>(m);
                        break;
                    case OpDefine.SCAddAEventBox:
                        result = ProtoBuf.Serializer.Deserialize<SCAddAEventBox>(m);
                        break;
                    case OpDefine.CSUpdatePosition:
                        result = ProtoBuf.Serializer.Deserialize<CSUpdatePosition>(m);
                        break;
                    case OpDefine.CSGetTurnTableInfo:
                        result = ProtoBuf.Serializer.Deserialize<CSGetTurnTableInfo>(m);
                        break;
                    case OpDefine.SCGetTurnTableInfo:
                        result = ProtoBuf.Serializer.Deserialize<SCGetTurnTableInfo>(m);
                        break;
                    case OpDefine.CSPlayerTurnTable:
                        result = ProtoBuf.Serializer.Deserialize<CSPlayerTurnTable>(m);
                        break;
                    case OpDefine.SCPlayerTurnTable:
                        result = ProtoBuf.Serializer.Deserialize<SCPlayerTurnTable>(m);
                        break;
                    case OpDefine.CSExchangeScore:
                        result = ProtoBuf.Serializer.Deserialize<CSExchangeScore>(m);
                        break;
                    case OpDefine.SCExchangeScore:
                        result = ProtoBuf.Serializer.Deserialize<SCExchangeScore>(m);
                        break;
#endregion
#region 消息协议号 18001-19000
                    case OpDefine.CSGetMyUnion:
                        result = ProtoBuf.Serializer.Deserialize<CSGetMyUnion>(m);
                        break;
                    case OpDefine.SCGetMyUnion:
                        result = ProtoBuf.Serializer.Deserialize<SCGetMyUnion>(m);
                        break;
                    case OpDefine.CSGetUnionList:
                        result = ProtoBuf.Serializer.Deserialize<CSGetUnionList>(m);
                        break;
                    case OpDefine.SCGetUnionList:
                        result = ProtoBuf.Serializer.Deserialize<SCGetUnionList>(m);
                        break;
                    case OpDefine.CSSearchUnion:
                        result = ProtoBuf.Serializer.Deserialize<CSSearchUnion>(m);
                        break;
                    case OpDefine.SCSearchUnion:
                        result = ProtoBuf.Serializer.Deserialize<SCSearchUnion>(m);
                        break;
                    case OpDefine.CSApplyUnion:
                        result = ProtoBuf.Serializer.Deserialize<CSApplyUnion>(m);
                        break;
                    case OpDefine.SCApplyUnion:
                        result = ProtoBuf.Serializer.Deserialize<SCApplyUnion>(m);
                        break;
                    case OpDefine.CSCreateUnion:
                        result = ProtoBuf.Serializer.Deserialize<CSCreateUnion>(m);
                        break;
                    case OpDefine.SCCreateUnion:
                        result = ProtoBuf.Serializer.Deserialize<SCCreateUnion>(m);
                        break;
                    case OpDefine.CSEnterUnion:
                        result = ProtoBuf.Serializer.Deserialize<CSEnterUnion>(m);
                        break;
                    case OpDefine.SCEnterUnion:
                        result = ProtoBuf.Serializer.Deserialize<SCEnterUnion>(m);
                        break;
                    case OpDefine.CSGetUnionApply:
                        result = ProtoBuf.Serializer.Deserialize<CSGetUnionApply>(m);
                        break;
                    case OpDefine.SCGetUnionApply:
                        result = ProtoBuf.Serializer.Deserialize<SCGetUnionApply>(m);
                        break;
                    case OpDefine.CSOperateUnionApply:
                        result = ProtoBuf.Serializer.Deserialize<CSOperateUnionApply>(m);
                        break;
                    case OpDefine.SCOperateUnionApply:
                        result = ProtoBuf.Serializer.Deserialize<SCOperateUnionApply>(m);
                        break;
                    case OpDefine.CSModifyUnionNotice:
                        result = ProtoBuf.Serializer.Deserialize<CSModifyUnionNotice>(m);
                        break;
                    case OpDefine.SCModifyUnionNotice:
                        result = ProtoBuf.Serializer.Deserialize<SCModifyUnionNotice>(m);
                        break;
                    case OpDefine.CSEnterMeetingHall:
                        result = ProtoBuf.Serializer.Deserialize<CSEnterMeetingHall>(m);
                        break;
                    case OpDefine.SCEnterMeetingHall:
                        result = ProtoBuf.Serializer.Deserialize<SCEnterMeetingHall>(m);
                        break;
                    case OpDefine.CSLeaveUnion:
                        result = ProtoBuf.Serializer.Deserialize<CSLeaveUnion>(m);
                        break;
                    case OpDefine.SCLeaveUnion:
                        result = ProtoBuf.Serializer.Deserialize<SCLeaveUnion>(m);
                        break;
                    case OpDefine.CSKickOutUnion:
                        result = ProtoBuf.Serializer.Deserialize<CSKickOutUnion>(m);
                        break;
                    case OpDefine.SCKickOutUnion:
                        result = ProtoBuf.Serializer.Deserialize<SCKickOutUnion>(m);
                        break;
                    case OpDefine.SCKickOutUnionToPlayer:
                        result = ProtoBuf.Serializer.Deserialize<SCKickOutUnionToPlayer>(m);
                        break;
                    case OpDefine.SCOperateUnionApplyToPlayer:
                        result = ProtoBuf.Serializer.Deserialize<SCOperateUnionApplyToPlayer>(m);
                        break;
                    case OpDefine.CSHireOrFireVicePresident:
                        result = ProtoBuf.Serializer.Deserialize<CSHireOrFireVicePresident>(m);
                        break;
                    case OpDefine.SCHireOrFireVicePresident:
                        result = ProtoBuf.Serializer.Deserialize<SCHireOrFireVicePresident>(m);
                        break;
                    case OpDefine.CSApplyUnionTemp:
                        result = ProtoBuf.Serializer.Deserialize<CSApplyUnionTemp>(m);
                        break;
                    case OpDefine.SCApplyUnionTemp:
                        result = ProtoBuf.Serializer.Deserialize<SCApplyUnionTemp>(m);
                        break;
                    case OpDefine.CSGetUnionListWithUnion:
                        result = ProtoBuf.Serializer.Deserialize<CSGetUnionListWithUnion>(m);
                        break;
                    case OpDefine.SCGetUnionListWithUnion:
                        result = ProtoBuf.Serializer.Deserialize<SCGetUnionListWithUnion>(m);
                        break;
                    case OpDefine.CSSearchUnionWithUnion:
                        result = ProtoBuf.Serializer.Deserialize<CSSearchUnionWithUnion>(m);
                        break;
                    case OpDefine.SCSearchUnionWithUnion:
                        result = ProtoBuf.Serializer.Deserialize<SCSearchUnionWithUnion>(m);
                        break;
                    case OpDefine.CSGetUnionMemberWithUnion:
                        result = ProtoBuf.Serializer.Deserialize<CSGetUnionMemberWithUnion>(m);
                        break;
                    case OpDefine.SCGetUnionMemberWithUnion:
                        result = ProtoBuf.Serializer.Deserialize<SCGetUnionMemberWithUnion>(m);
                        break;
                    case OpDefine.CSGetUnionBlagList:
                        result = ProtoBuf.Serializer.Deserialize<CSGetUnionBlagList>(m);
                        break;
                    case OpDefine.SCGetUnionBlagList:
                        result = ProtoBuf.Serializer.Deserialize<SCGetUnionBlagList>(m);
                        break;
                    case OpDefine.CSPublishUnionBlag:
                        result = ProtoBuf.Serializer.Deserialize<CSPublishUnionBlag>(m);
                        break;
                    case OpDefine.SCPublishUnionBlag:
                        result = ProtoBuf.Serializer.Deserialize<SCPublishUnionBlag>(m);
                        break;
                    case OpDefine.CSGiveUnionBlag:
                        result = ProtoBuf.Serializer.Deserialize<CSGiveUnionBlag>(m);
                        break;
                    case OpDefine.SCGiveUnionBlag:
                        result = ProtoBuf.Serializer.Deserialize<SCGiveUnionBlag>(m);
                        break;
                    case OpDefine.CSTransferUnionManor:
                        result = ProtoBuf.Serializer.Deserialize<CSTransferUnionManor>(m);
                        break;
                    case OpDefine.SCRefreshUnionBaseInfo:
                        result = ProtoBuf.Serializer.Deserialize<SCRefreshUnionBaseInfo>(m);
                        break;
                    case OpDefine.CSAttornPresident:
                        result = ProtoBuf.Serializer.Deserialize<CSAttornPresident>(m);
                        break;
                    case OpDefine.SCAttornPresident:
                        result = ProtoBuf.Serializer.Deserialize<SCAttornPresident>(m);
                        break;
                    case OpDefine.CSCancleAttornPresident:
                        result = ProtoBuf.Serializer.Deserialize<CSCancleAttornPresident>(m);
                        break;
                    case OpDefine.SCCancleAttornPresident:
                        result = ProtoBuf.Serializer.Deserialize<SCCancleAttornPresident>(m);
                        break;
                    case OpDefine.CSCancleApplyUnion:
                        result = ProtoBuf.Serializer.Deserialize<CSCancleApplyUnion>(m);
                        break;
                    case OpDefine.SCCancleApplyUnion:
                        result = ProtoBuf.Serializer.Deserialize<SCCancleApplyUnion>(m);
                        break;
                    case OpDefine.CSLeaveUnionManor:
                        result = ProtoBuf.Serializer.Deserialize<CSLeaveUnionManor>(m);
                        break;
                    case OpDefine.CSApplyUnionFromPlayer:
                        result = ProtoBuf.Serializer.Deserialize<CSApplyUnionFromPlayer>(m);
                        break;
                    case OpDefine.SCApplyUnionFromPlayer:
                        result = ProtoBuf.Serializer.Deserialize<SCApplyUnionFromPlayer>(m);
                        break;
                    case OpDefine.CSUnionInvite:
                        result = ProtoBuf.Serializer.Deserialize<CSUnionInvite>(m);
                        break;
                    case OpDefine.SCUnionInvite:
                        result = ProtoBuf.Serializer.Deserialize<SCUnionInvite>(m);
                        break;
                    case OpDefine.SCUnionInviteToPlayer:
                        result = ProtoBuf.Serializer.Deserialize<SCUnionInviteToPlayer>(m);
                        break;
                    case OpDefine.CSUnionInviteConfirm:
                        result = ProtoBuf.Serializer.Deserialize<CSUnionInviteConfirm>(m);
                        break;
                    case OpDefine.SCUnionInviteConfirm:
                        result = ProtoBuf.Serializer.Deserialize<SCUnionInviteConfirm>(m);
                        break;
                    case OpDefine.SCUnionCurrencyToPlayers:
                        result = ProtoBuf.Serializer.Deserialize<SCUnionCurrencyToPlayers>(m);
                        break;
                    case OpDefine.CSSendUnionMail:
                        result = ProtoBuf.Serializer.Deserialize<CSSendUnionMail>(m);
                        break;
                    case OpDefine.SCSendUnionMail:
                        result = ProtoBuf.Serializer.Deserialize<SCSendUnionMail>(m);
                        break;
                    case OpDefine.CSModifyUnionApplyOpen:
                        result = ProtoBuf.Serializer.Deserialize<CSModifyUnionApplyOpen>(m);
                        break;
                    case OpDefine.SCModifyUnionApplyOpen:
                        result = ProtoBuf.Serializer.Deserialize<SCModifyUnionApplyOpen>(m);
                        break;
                    case OpDefine.CSPayUnionLackFund:
                        result = ProtoBuf.Serializer.Deserialize<CSPayUnionLackFund>(m);
                        break;
                    case OpDefine.SCPayUnionLackFund:
                        result = ProtoBuf.Serializer.Deserialize<SCPayUnionLackFund>(m);
                        break;
                    case OpDefine.CSPushUnionSeaFightInfo:
                        result = ProtoBuf.Serializer.Deserialize<CSPushUnionSeaFightInfo>(m);
                        break;
                    case OpDefine.SCPushUnionSeaFightInfo:
                        result = ProtoBuf.Serializer.Deserialize<SCPushUnionSeaFightInfo>(m);
                        break;
                    case OpDefine.CSModifyUnionName:
                        result = ProtoBuf.Serializer.Deserialize<CSModifyUnionName>(m);
                        break;
                    case OpDefine.SCModifyUnionName:
                        result = ProtoBuf.Serializer.Deserialize<SCModifyUnionName>(m);
                        break;
                    case OpDefine.CSChangeUnionBuildingHeroModel:
                        result = ProtoBuf.Serializer.Deserialize<CSChangeUnionBuildingHeroModel>(m);
                        break;
                    case OpDefine.SCChangeUnionBuildingHeroModel:
                        result = ProtoBuf.Serializer.Deserialize<SCChangeUnionBuildingHeroModel>(m);
                        break;
                    case OpDefine.CSEnterUnionShop:
                        result = ProtoBuf.Serializer.Deserialize<CSEnterUnionShop>(m);
                        break;
                    case OpDefine.SCEnterUnionShop:
                        result = ProtoBuf.Serializer.Deserialize<SCEnterUnionShop>(m);
                        break;
                    case OpDefine.CSBuyUnionShopItem:
                        result = ProtoBuf.Serializer.Deserialize<CSBuyUnionShopItem>(m);
                        break;
                    case OpDefine.CSEnterUnionStoreroom:
                        result = ProtoBuf.Serializer.Deserialize<CSEnterUnionStoreroom>(m);
                        break;
                    case OpDefine.SCEnterUnionStoreroom:
                        result = ProtoBuf.Serializer.Deserialize<SCEnterUnionStoreroom>(m);
                        break;
                    case OpDefine.CSGetUnionStoreroomGuard:
                        result = ProtoBuf.Serializer.Deserialize<CSGetUnionStoreroomGuard>(m);
                        break;
                    case OpDefine.SCGetUnionStoreroomGuard:
                        result = ProtoBuf.Serializer.Deserialize<SCGetUnionStoreroomGuard>(m);
                        break;
                    case OpDefine.CSUnionStoreroomDonate:
                        result = ProtoBuf.Serializer.Deserialize<CSUnionStoreroomDonate>(m);
                        break;
                    case OpDefine.SCUnionStoreroomDonate:
                        result = ProtoBuf.Serializer.Deserialize<SCUnionStoreroomDonate>(m);
                        break;
                    case OpDefine.CSUpgradeBuildingLev:
                        result = ProtoBuf.Serializer.Deserialize<CSUpgradeBuildingLev>(m);
                        break;
                    case OpDefine.SCUpgradeBuildingLev:
                        result = ProtoBuf.Serializer.Deserialize<SCUpgradeBuildingLev>(m);
                        break;
                    case OpDefine.CSEnterUnionBattery:
                        result = ProtoBuf.Serializer.Deserialize<CSEnterUnionBattery>(m);
                        break;
                    case OpDefine.SCEnterUnionBattery:
                        result = ProtoBuf.Serializer.Deserialize<SCEnterUnionBattery>(m);
                        break;
                    case OpDefine.CSActiveBatterySkill:
                        result = ProtoBuf.Serializer.Deserialize<CSActiveBatterySkill>(m);
                        break;
                    case OpDefine.SCActiveBatterySkill:
                        result = ProtoBuf.Serializer.Deserialize<SCActiveBatterySkill>(m);
                        break;
                    case OpDefine.CSInactiveBatterySkill:
                        result = ProtoBuf.Serializer.Deserialize<CSInactiveBatterySkill>(m);
                        break;
                    case OpDefine.SCInactiveBatterySkill:
                        result = ProtoBuf.Serializer.Deserialize<SCInactiveBatterySkill>(m);
                        break;
                    case OpDefine.CSBuildBattery:
                        result = ProtoBuf.Serializer.Deserialize<CSBuildBattery>(m);
                        break;
                    case OpDefine.SCBuildBattery:
                        result = ProtoBuf.Serializer.Deserialize<SCBuildBattery>(m);
                        break;
                    case OpDefine.CSGetBatterySuit:
                        result = ProtoBuf.Serializer.Deserialize<CSGetBatterySuit>(m);
                        break;
                    case OpDefine.SCGetBatterySuit:
                        result = ProtoBuf.Serializer.Deserialize<SCGetBatterySuit>(m);
                        break;
                    case OpDefine.CSBuyBatterySuit:
                        result = ProtoBuf.Serializer.Deserialize<CSBuyBatterySuit>(m);
                        break;
                    case OpDefine.SCBuyBatterySuit:
                        result = ProtoBuf.Serializer.Deserialize<SCBuyBatterySuit>(m);
                        break;
                    case OpDefine.CSDressBatterySuit:
                        result = ProtoBuf.Serializer.Deserialize<CSDressBatterySuit>(m);
                        break;
                    case OpDefine.SCDressBatterySuit:
                        result = ProtoBuf.Serializer.Deserialize<SCDressBatterySuit>(m);
                        break;
                    case OpDefine.CSEnterUnionTRStrategy:
                        result = ProtoBuf.Serializer.Deserialize<CSEnterUnionTRStrategy>(m);
                        break;
                    case OpDefine.SCEnterUnionTRStrategy:
                        result = ProtoBuf.Serializer.Deserialize<SCEnterUnionTRStrategy>(m);
                        break;
                    case OpDefine.CSLookUnionTRStrategy:
                        result = ProtoBuf.Serializer.Deserialize<CSLookUnionTRStrategy>(m);
                        break;
                    case OpDefine.SCLookUnionTRStrategy:
                        result = ProtoBuf.Serializer.Deserialize<SCLookUnionTRStrategy>(m);
                        break;
                    case OpDefine.CSSaveUnionTRStrategy:
                        result = ProtoBuf.Serializer.Deserialize<CSSaveUnionTRStrategy>(m);
                        break;
                    case OpDefine.SCSaveUnionTRStrategy:
                        result = ProtoBuf.Serializer.Deserialize<SCSaveUnionTRStrategy>(m);
                        break;
                    case OpDefine.CSLikeUnionTRStrategy:
                        result = ProtoBuf.Serializer.Deserialize<CSLikeUnionTRStrategy>(m);
                        break;
                    case OpDefine.SCLikeUnionTRStrategy:
                        result = ProtoBuf.Serializer.Deserialize<SCLikeUnionTRStrategy>(m);
                        break;
                    case OpDefine.CSCommentUnionTRStrategy:
                        result = ProtoBuf.Serializer.Deserialize<CSCommentUnionTRStrategy>(m);
                        break;
                    case OpDefine.SCCommentUnionTRStrategy:
                        result = ProtoBuf.Serializer.Deserialize<SCCommentUnionTRStrategy>(m);
                        break;
                    case OpDefine.CSTRStrongerChallenge:
                        result = ProtoBuf.Serializer.Deserialize<CSTRStrongerChallenge>(m);
                        break;
                    case OpDefine.SCTRStrongerChallenge:
                        result = ProtoBuf.Serializer.Deserialize<SCTRStrongerChallenge>(m);
                        break;
                    case OpDefine.SCTRStrongerChangeToAllUnionInSence:
                        result = ProtoBuf.Serializer.Deserialize<SCTRStrongerChangeToAllUnionInSence>(m);
                        break;
                    case OpDefine.CSEnterUnionTrainRoom:
                        result = ProtoBuf.Serializer.Deserialize<CSEnterUnionTrainRoom>(m);
                        break;
                    case OpDefine.SCEnterUnionTrainRoom:
                        result = ProtoBuf.Serializer.Deserialize<SCEnterUnionTrainRoom>(m);
                        break;
                    case OpDefine.CSUpgradeUnionTrainRoomSkill:
                        result = ProtoBuf.Serializer.Deserialize<CSUpgradeUnionTrainRoomSkill>(m);
                        break;
                    case OpDefine.SCUpgradeUnionTrainRoomSkill:
                        result = ProtoBuf.Serializer.Deserialize<SCUpgradeUnionTrainRoomSkill>(m);
                        break;
                    case OpDefine.SCTRStrongerChallengeResult:
                        result = ProtoBuf.Serializer.Deserialize<SCTRStrongerChallengeResult>(m);
                        break;
                    case OpDefine.CSGetBanquetInfo:
                        result = ProtoBuf.Serializer.Deserialize<CSGetBanquetInfo>(m);
                        break;
                    case OpDefine.SCGetBanquetInfo:
                        result = ProtoBuf.Serializer.Deserialize<SCGetBanquetInfo>(m);
                        break;
                    case OpDefine.CSTransferUnionBanquet:
                        result = ProtoBuf.Serializer.Deserialize<CSTransferUnionBanquet>(m);
                        break;
                    case OpDefine.CSSetUnionBanquet:
                        result = ProtoBuf.Serializer.Deserialize<CSSetUnionBanquet>(m);
                        break;
                    case OpDefine.SCSetUnionBanquet:
                        result = ProtoBuf.Serializer.Deserialize<SCSetUnionBanquet>(m);
                        break;
                    case OpDefine.SCPushBanquetStart:
                        result = ProtoBuf.Serializer.Deserialize<SCPushBanquetStart>(m);
                        break;
                    case OpDefine.SCPushBanquetStage:
                        result = ProtoBuf.Serializer.Deserialize<SCPushBanquetStage>(m);
                        break;
                    case OpDefine.CSBuyBanquetGoods:
                        result = ProtoBuf.Serializer.Deserialize<CSBuyBanquetGoods>(m);
                        break;
                    case OpDefine.SCBuyBanquetGoods:
                        result = ProtoBuf.Serializer.Deserialize<SCBuyBanquetGoods>(m);
                        break;
                    case OpDefine.SCPushBuyBanquetGoods:
                        result = ProtoBuf.Serializer.Deserialize<SCPushBuyBanquetGoods>(m);
                        break;
                    case OpDefine.CSGetResultBanquet:
                        result = ProtoBuf.Serializer.Deserialize<CSGetResultBanquet>(m);
                        break;
                    case OpDefine.SCGetResultBanquet:
                        result = ProtoBuf.Serializer.Deserialize<SCGetResultBanquet>(m);
                        break;
                    case OpDefine.CSGetExBanquetReward:
                        result = ProtoBuf.Serializer.Deserialize<CSGetExBanquetReward>(m);
                        break;
                    case OpDefine.SCGetExBanquetReward:
                        result = ProtoBuf.Serializer.Deserialize<SCGetExBanquetReward>(m);
                        break;
                    case OpDefine.SCPushFreeBanquetGoods:
                        result = ProtoBuf.Serializer.Deserialize<SCPushFreeBanquetGoods>(m);
                        break;
                    case OpDefine.SCPushBanquetEnd:
                        result = ProtoBuf.Serializer.Deserialize<SCPushBanquetEnd>(m);
                        break;
                    case OpDefine.CSGetUnionTask:
                        result = ProtoBuf.Serializer.Deserialize<CSGetUnionTask>(m);
                        break;
                    case OpDefine.SCGetUnionTask:
                        result = ProtoBuf.Serializer.Deserialize<SCGetUnionTask>(m);
                        break;
                    case OpDefine.CSHaveUnionTask:
                        result = ProtoBuf.Serializer.Deserialize<CSHaveUnionTask>(m);
                        break;
                    case OpDefine.SCHaveUnionTask:
                        result = ProtoBuf.Serializer.Deserialize<SCHaveUnionTask>(m);
                        break;
                    case OpDefine.CSGetUnionShopAuctionInfo:
                        result = ProtoBuf.Serializer.Deserialize<CSGetUnionShopAuctionInfo>(m);
                        break;
                    case OpDefine.SCGetUnionShopAuctionInfo:
                        result = ProtoBuf.Serializer.Deserialize<SCGetUnionShopAuctionInfo>(m);
                        break;
                    case OpDefine.CSShopAuction:
                        result = ProtoBuf.Serializer.Deserialize<CSShopAuction>(m);
                        break;
                    case OpDefine.SCShopAuction:
                        result = ProtoBuf.Serializer.Deserialize<SCShopAuction>(m);
                        break;
                    case OpDefine.CSEnterControlCenter:
                        result = ProtoBuf.Serializer.Deserialize<CSEnterControlCenter>(m);
                        break;
                    case OpDefine.SCEnterControlCenter:
                        result = ProtoBuf.Serializer.Deserialize<SCEnterControlCenter>(m);
                        break;
                    case OpDefine.CSUpgradeControlCenterSkill:
                        result = ProtoBuf.Serializer.Deserialize<CSUpgradeControlCenterSkill>(m);
                        break;
                    case OpDefine.SCUpgradeControlCenterSkill:
                        result = ProtoBuf.Serializer.Deserialize<SCUpgradeControlCenterSkill>(m);
                        break;
                    case OpDefine.CSGetUnionShopSaleInfo:
                        result = ProtoBuf.Serializer.Deserialize<CSGetUnionShopSaleInfo>(m);
                        break;
                    case OpDefine.SCGetUnionShopSaleInfo:
                        result = ProtoBuf.Serializer.Deserialize<SCGetUnionShopSaleInfo>(m);
                        break;
                    case OpDefine.CSShopSale:
                        result = ProtoBuf.Serializer.Deserialize<CSShopSale>(m);
                        break;
                    case OpDefine.SCShopSale:
                        result = ProtoBuf.Serializer.Deserialize<SCShopSale>(m);
                        break;
                    case OpDefine.CSGetUnionRepairState:
                        result = ProtoBuf.Serializer.Deserialize<CSGetUnionRepairState>(m);
                        break;
                    case OpDefine.SCGetUnionRepairState:
                        result = ProtoBuf.Serializer.Deserialize<SCGetUnionRepairState>(m);
                        break;
                    case OpDefine.CSEnterUnionRepair:
                        result = ProtoBuf.Serializer.Deserialize<CSEnterUnionRepair>(m);
                        break;
                    case OpDefine.SCEnterUnionRepair:
                        result = ProtoBuf.Serializer.Deserialize<SCEnterUnionRepair>(m);
                        break;
                    case OpDefine.CSBuyUnionRepair:
                        result = ProtoBuf.Serializer.Deserialize<CSBuyUnionRepair>(m);
                        break;
                    case OpDefine.SCBuyUnionRepair:
                        result = ProtoBuf.Serializer.Deserialize<SCBuyUnionRepair>(m);
                        break;
                    case OpDefine.CSGetUnionRepairReward:
                        result = ProtoBuf.Serializer.Deserialize<CSGetUnionRepairReward>(m);
                        break;
                    case OpDefine.SCGetUnionRepairReward:
                        result = ProtoBuf.Serializer.Deserialize<SCGetUnionRepairReward>(m);
                        break;
                    case OpDefine.CSGetUnionRepairRecord:
                        result = ProtoBuf.Serializer.Deserialize<CSGetUnionRepairRecord>(m);
                        break;
                    case OpDefine.SCGetUnionRepairRecord:
                        result = ProtoBuf.Serializer.Deserialize<SCGetUnionRepairRecord>(m);
                        break;
#endregion
#region 消息协议号 89001-89040
                    case OpDefine.CSEnterUnionPray:
                        result = ProtoBuf.Serializer.Deserialize<CSEnterUnionPray>(m);
                        break;
                    case OpDefine.SCEnterUnionPray:
                        result = ProtoBuf.Serializer.Deserialize<SCEnterUnionPray>(m);
                        break;
                    case OpDefine.CSUnionPray:
                        result = ProtoBuf.Serializer.Deserialize<CSUnionPray>(m);
                        break;
                    case OpDefine.SCUnionPray:
                        result = ProtoBuf.Serializer.Deserialize<SCUnionPray>(m);
                        break;
                    case OpDefine.CSUnionPrayGive:
                        result = ProtoBuf.Serializer.Deserialize<CSUnionPrayGive>(m);
                        break;
                    case OpDefine.SCUnionPrayGive:
                        result = ProtoBuf.Serializer.Deserialize<SCUnionPrayGive>(m);
                        break;
                    case OpDefine.CSGetUnionPrayRecord:
                        result = ProtoBuf.Serializer.Deserialize<CSGetUnionPrayRecord>(m);
                        break;
                    case OpDefine.SCGetUnionPrayRecord:
                        result = ProtoBuf.Serializer.Deserialize<SCGetUnionPrayRecord>(m);
                        break;
#endregion
#region 消息协议号 78501-79000
                    case OpDefine.CSUSFActivity:
                        result = ProtoBuf.Serializer.Deserialize<CSUSFActivity>(m);
                        break;
                    case OpDefine.SCUSFActivity:
                        result = ProtoBuf.Serializer.Deserialize<SCUSFActivity>(m);
                        break;
                    case OpDefine.CSUSFActivityApplyInfo:
                        result = ProtoBuf.Serializer.Deserialize<CSUSFActivityApplyInfo>(m);
                        break;
                    case OpDefine.SCUSFActivityApplyInfo:
                        result = ProtoBuf.Serializer.Deserialize<SCUSFActivityApplyInfo>(m);
                        break;
                    case OpDefine.CSUSFUnionApply:
                        result = ProtoBuf.Serializer.Deserialize<CSUSFUnionApply>(m);
                        break;
                    case OpDefine.CSUSFUnionAutoApply:
                        result = ProtoBuf.Serializer.Deserialize<CSUSFUnionAutoApply>(m);
                        break;
                    case OpDefine.SCUSFUnionApply:
                        result = ProtoBuf.Serializer.Deserialize<SCUSFUnionApply>(m);
                        break;
                    case OpDefine.CSUSFPlayerJoin:
                        result = ProtoBuf.Serializer.Deserialize<CSUSFPlayerJoin>(m);
                        break;
                    case OpDefine.CSUSFPlayerAutoJoin:
                        result = ProtoBuf.Serializer.Deserialize<CSUSFPlayerAutoJoin>(m);
                        break;
                    case OpDefine.SCUSFPlayerJoin:
                        result = ProtoBuf.Serializer.Deserialize<SCUSFPlayerJoin>(m);
                        break;
                    case OpDefine.CSUSFBattleRoundInfo:
                        result = ProtoBuf.Serializer.Deserialize<CSUSFBattleRoundInfo>(m);
                        break;
                    case OpDefine.SCUSFBattleRoundInfo:
                        result = ProtoBuf.Serializer.Deserialize<SCUSFBattleRoundInfo>(m);
                        break;
                    case OpDefine.CSUSFSetFightPlayer:
                        result = ProtoBuf.Serializer.Deserialize<CSUSFSetFightPlayer>(m);
                        break;
                    case OpDefine.CSUSFOneKeySetFightList:
                        result = ProtoBuf.Serializer.Deserialize<CSUSFOneKeySetFightList>(m);
                        break;
                    case OpDefine.SCUSFFightList:
                        result = ProtoBuf.Serializer.Deserialize<SCUSFFightList>(m);
                        break;
                    case OpDefine.CSUSFLookFightReplay:
                        result = ProtoBuf.Serializer.Deserialize<CSUSFLookFightReplay>(m);
                        break;
                    case OpDefine.CSUSFGetPromotionTechInfos:
                        result = ProtoBuf.Serializer.Deserialize<CSUSFGetPromotionTechInfos>(m);
                        break;
                    case OpDefine.SCUSFGetPromotionTechInfos:
                        result = ProtoBuf.Serializer.Deserialize<SCUSFGetPromotionTechInfos>(m);
                        break;
                    case OpDefine.CSUSFSetPromotions:
                        result = ProtoBuf.Serializer.Deserialize<CSUSFSetPromotions>(m);
                        break;
                    case OpDefine.SCUSFSetPromotions:
                        result = ProtoBuf.Serializer.Deserialize<SCUSFSetPromotions>(m);
                        break;
                    case OpDefine.CSUSFPlayerEnter:
                        result = ProtoBuf.Serializer.Deserialize<CSUSFPlayerEnter>(m);
                        break;
                    case OpDefine.SCUSFPlayerEnter:
                        result = ProtoBuf.Serializer.Deserialize<SCUSFPlayerEnter>(m);
                        break;
                    case OpDefine.CSUSFPlayerQuit:
                        result = ProtoBuf.Serializer.Deserialize<CSUSFPlayerQuit>(m);
                        break;
                    case OpDefine.SCUSFPlayerQuit:
                        result = ProtoBuf.Serializer.Deserialize<SCUSFPlayerQuit>(m);
                        break;
                    case OpDefine.CSUSFPlayerMove:
                        result = ProtoBuf.Serializer.Deserialize<CSUSFPlayerMove>(m);
                        break;
                    case OpDefine.SCUSFPlayerMove:
                        result = ProtoBuf.Serializer.Deserialize<SCUSFPlayerMove>(m);
                        break;
                    case OpDefine.SCUSFUnitStateChange:
                        result = ProtoBuf.Serializer.Deserialize<SCUSFUnitStateChange>(m);
                        break;
                    case OpDefine.SCUSFightStateChange:
                        result = ProtoBuf.Serializer.Deserialize<SCUSFightStateChange>(m);
                        break;
                    case OpDefine.SCUSFightSettlement:
                        result = ProtoBuf.Serializer.Deserialize<SCUSFightSettlement>(m);
                        break;
                    case OpDefine.SCUSFUnitProChange:
                        result = ProtoBuf.Serializer.Deserialize<SCUSFUnitProChange>(m);
                        break;
                    case OpDefine.CSUSFPlayerBot:
                        result = ProtoBuf.Serializer.Deserialize<CSUSFPlayerBot>(m);
                        break;
                    case OpDefine.SCUSFPlayerBot:
                        result = ProtoBuf.Serializer.Deserialize<SCUSFPlayerBot>(m);
                        break;
                    case OpDefine.SCUSFCampInfoChange:
                        result = ProtoBuf.Serializer.Deserialize<SCUSFCampInfoChange>(m);
                        break;
                    case OpDefine.SCUSFPlayerSyncData:
                        result = ProtoBuf.Serializer.Deserialize<SCUSFPlayerSyncData>(m);
                        break;
                    case OpDefine.CSUSFGetFightInfo:
                        result = ProtoBuf.Serializer.Deserialize<CSUSFGetFightInfo>(m);
                        break;
                    case OpDefine.SCUSFGetFightInfo:
                        result = ProtoBuf.Serializer.Deserialize<SCUSFGetFightInfo>(m);
                        break;
                    case OpDefine.CSUSFSwitchPlayerMicState:
                        result = ProtoBuf.Serializer.Deserialize<CSUSFSwitchPlayerMicState>(m);
                        break;
                    case OpDefine.SCUSFSwitchPlayerMicState:
                        result = ProtoBuf.Serializer.Deserialize<SCUSFSwitchPlayerMicState>(m);
                        break;
                    case OpDefine.SCUSFSyncFortressBuffInfos:
                        result = ProtoBuf.Serializer.Deserialize<SCUSFSyncFortressBuffInfos>(m);
                        break;
                    case OpDefine.SCUSFUnitBuffChange:
                        result = ProtoBuf.Serializer.Deserialize<SCUSFUnitBuffChange>(m);
                        break;
                    case OpDefine.SCUSFPlayerBattleResult:
                        result = ProtoBuf.Serializer.Deserialize<SCUSFPlayerBattleResult>(m);
                        break;
                    case OpDefine.CSUSFGetRankInfo:
                        result = ProtoBuf.Serializer.Deserialize<CSUSFGetRankInfo>(m);
                        break;
                    case OpDefine.SCUSFGetRankInfo:
                        result = ProtoBuf.Serializer.Deserialize<SCUSFGetRankInfo>(m);
                        break;
                    case OpDefine.SCUSFPlayerSwitchFormation:
                        result = ProtoBuf.Serializer.Deserialize<SCUSFPlayerSwitchFormation>(m);
                        break;
                    case OpDefine.CSUSFGetOtherFormation:
                        result = ProtoBuf.Serializer.Deserialize<CSUSFGetOtherFormation>(m);
                        break;
                    case OpDefine.SCUSFGetOtherFormation:
                        result = ProtoBuf.Serializer.Deserialize<SCUSFGetOtherFormation>(m);
                        break;
                    case OpDefine.CSUSFFortressPromotion:
                        result = ProtoBuf.Serializer.Deserialize<CSUSFFortressPromotion>(m);
                        break;
                    case OpDefine.SCUFFortressPromotionBegin:
                        result = ProtoBuf.Serializer.Deserialize<SCUFFortressPromotionBegin>(m);
                        break;
                    case OpDefine.SCUFFortressPromotionComplete:
                        result = ProtoBuf.Serializer.Deserialize<SCUFFortressPromotionComplete>(m);
                        break;
                    case OpDefine.CSUFRequestForCombatLogInfo:
                        result = ProtoBuf.Serializer.Deserialize<CSUFRequestForCombatLogInfo>(m);
                        break;
                    case OpDefine.SCUFRequestForCombatLogInfo:
                        result = ProtoBuf.Serializer.Deserialize<SCUFRequestForCombatLogInfo>(m);
                        break;
                    case OpDefine.SCUFFortressAttack:
                        result = ProtoBuf.Serializer.Deserialize<SCUFFortressAttack>(m);
                        break;
                    case OpDefine.SCUSFCampPromotionInfoChange:
                        result = ProtoBuf.Serializer.Deserialize<SCUSFCampPromotionInfoChange>(m);
                        break;
                    case OpDefine.CSLookUSFReplayList:
                        result = ProtoBuf.Serializer.Deserialize<CSLookUSFReplayList>(m);
                        break;
                    case OpDefine.SCLookUSFReplayList:
                        result = ProtoBuf.Serializer.Deserialize<SCLookUSFReplayList>(m);
                        break;
#endregion
#region 消息协议号 85801-86000
                    case OpDefine.CSDeclareWarInfo:
                        result = ProtoBuf.Serializer.Deserialize<CSDeclareWarInfo>(m);
                        break;
                    case OpDefine.SCDeclareWarInfo:
                        result = ProtoBuf.Serializer.Deserialize<SCDeclareWarInfo>(m);
                        break;
                    case OpDefine.CSDeclareWarListInfo:
                        result = ProtoBuf.Serializer.Deserialize<CSDeclareWarListInfo>(m);
                        break;
                    case OpDefine.SCDeclareWarListInfo:
                        result = ProtoBuf.Serializer.Deserialize<SCDeclareWarListInfo>(m);
                        break;
                    case OpDefine.CSDeclareWarConfirm:
                        result = ProtoBuf.Serializer.Deserialize<CSDeclareWarConfirm>(m);
                        break;
                    case OpDefine.SCDeclareWarConfirm:
                        result = ProtoBuf.Serializer.Deserialize<SCDeclareWarConfirm>(m);
                        break;
                    case OpDefine.CSDeclareWarUpdate:
                        result = ProtoBuf.Serializer.Deserialize<CSDeclareWarUpdate>(m);
                        break;
                    case OpDefine.CSDeclareRankListInfo:
                        result = ProtoBuf.Serializer.Deserialize<CSDeclareRankListInfo>(m);
                        break;
                    case OpDefine.SCDeclareRankListInfo:
                        result = ProtoBuf.Serializer.Deserialize<SCDeclareRankListInfo>(m);
                        break;
                    case OpDefine.CSDeclareEnemyListInfo:
                        result = ProtoBuf.Serializer.Deserialize<CSDeclareEnemyListInfo>(m);
                        break;
                    case OpDefine.SCDeclareEnemyListInfo:
                        result = ProtoBuf.Serializer.Deserialize<SCDeclareEnemyListInfo>(m);
                        break;
#endregion
#region 海域战棋协议号 88401
                    case OpDefine.CSWarChessInfo:
                        result = ProtoBuf.Serializer.Deserialize<CSWarChessInfo>(m);
                        break;
                    case OpDefine.SCWarChessInfo:
                        result = ProtoBuf.Serializer.Deserialize<SCWarChessInfo>(m);
                        break;
                    case OpDefine.CSWarChessEnter:
                        result = ProtoBuf.Serializer.Deserialize<CSWarChessEnter>(m);
                        break;
                    case OpDefine.SCWarChessEnter:
                        result = ProtoBuf.Serializer.Deserialize<SCWarChessEnter>(m);
                        break;
                    case OpDefine.CSWarChessQuit:
                        result = ProtoBuf.Serializer.Deserialize<CSWarChessQuit>(m);
                        break;
                    case OpDefine.SCWarChessQuit:
                        result = ProtoBuf.Serializer.Deserialize<SCWarChessQuit>(m);
                        break;
                    case OpDefine.CSWarChessMoveChess:
                        result = ProtoBuf.Serializer.Deserialize<CSWarChessMoveChess>(m);
                        break;
                    case OpDefine.SCWarChessMoveChess:
                        result = ProtoBuf.Serializer.Deserialize<SCWarChessMoveChess>(m);
                        break;
                    case OpDefine.CSWarChessOperateChess:
                        result = ProtoBuf.Serializer.Deserialize<CSWarChessOperateChess>(m);
                        break;
                    case OpDefine.SCWarChessOperateChess:
                        result = ProtoBuf.Serializer.Deserialize<SCWarChessOperateChess>(m);
                        break;
                    case OpDefine.SCWarChessRoundTurnRes:
                        result = ProtoBuf.Serializer.Deserialize<SCWarChessRoundTurnRes>(m);
                        break;
                    case OpDefine.SCWarChessRefreshRes:
                        result = ProtoBuf.Serializer.Deserialize<SCWarChessRefreshRes>(m);
                        break;
                    case OpDefine.CSWarChessPlayEnd:
                        result = ProtoBuf.Serializer.Deserialize<CSWarChessPlayEnd>(m);
                        break;
                    case OpDefine.SCWarChessFightRes:
                        result = ProtoBuf.Serializer.Deserialize<SCWarChessFightRes>(m);
                        break;
                    case OpDefine.CSWarChessHeroChange:
                        result = ProtoBuf.Serializer.Deserialize<CSWarChessHeroChange>(m);
                        break;
                    case OpDefine.SCWarChessHeroChange:
                        result = ProtoBuf.Serializer.Deserialize<SCWarChessHeroChange>(m);
                        break;
                    case OpDefine.CSWarChessSkipRound:
                        result = ProtoBuf.Serializer.Deserialize<CSWarChessSkipRound>(m);
                        break;
                    case OpDefine.SCWarChessSkipRound:
                        result = ProtoBuf.Serializer.Deserialize<SCWarChessSkipRound>(m);
                        break;
                    case OpDefine.CSWarChessBuyHp:
                        result = ProtoBuf.Serializer.Deserialize<CSWarChessBuyHp>(m);
                        break;
                    case OpDefine.SCWarChessBuyHp:
                        result = ProtoBuf.Serializer.Deserialize<SCWarChessBuyHp>(m);
                        break;
                    case OpDefine.SCWarChessHeroUpgrade:
                        result = ProtoBuf.Serializer.Deserialize<SCWarChessHeroUpgrade>(m);
                        break;
#endregion
#region 消息协议号 19801-19900
                    case OpDefine.SSTeamBossTick:
                        result = ProtoBuf.Serializer.Deserialize<SSTeamBossTick>(m);
                        break;
                    case OpDefine.SSCreateTeamBoss:
                        result = ProtoBuf.Serializer.Deserialize<SSCreateTeamBoss>(m);
                        break;
                    case OpDefine.SSAddTeamBoss:
                        result = ProtoBuf.Serializer.Deserialize<SSAddTeamBoss>(m);
                        break;
                    case OpDefine.SSKillTeamBoss:
                        result = ProtoBuf.Serializer.Deserialize<SSKillTeamBoss>(m);
                        break;
                    case OpDefine.SSRemoveTeamBoss:
                        result = ProtoBuf.Serializer.Deserialize<SSRemoveTeamBoss>(m);
                        break;
                    case OpDefine.CSTeamBossInfo:
                        result = ProtoBuf.Serializer.Deserialize<CSTeamBossInfo>(m);
                        break;
                    case OpDefine.SCTeamBossInfo:
                        result = ProtoBuf.Serializer.Deserialize<SCTeamBossInfo>(m);
                        break;
                    case OpDefine.SSPersonBossTick:
                        result = ProtoBuf.Serializer.Deserialize<SSPersonBossTick>(m);
                        break;
                    case OpDefine.SSCreatePersonBoss:
                        result = ProtoBuf.Serializer.Deserialize<SSCreatePersonBoss>(m);
                        break;
                    case OpDefine.SSAddPersonBoss:
                        result = ProtoBuf.Serializer.Deserialize<SSAddPersonBoss>(m);
                        break;
                    case OpDefine.SSFightPersonBoss:
                        result = ProtoBuf.Serializer.Deserialize<SSFightPersonBoss>(m);
                        break;
                    case OpDefine.SSRemovePersonBoss:
                        result = ProtoBuf.Serializer.Deserialize<SSRemovePersonBoss>(m);
                        break;
                    case OpDefine.CSPersonBossInfo:
                        result = ProtoBuf.Serializer.Deserialize<CSPersonBossInfo>(m);
                        break;
                    case OpDefine.SCPersonBossInfo:
                        result = ProtoBuf.Serializer.Deserialize<SCPersonBossInfo>(m);
                        break;
                    case OpDefine.CSFightExtraPersonBoss:
                        result = ProtoBuf.Serializer.Deserialize<CSFightExtraPersonBoss>(m);
                        break;
                    case OpDefine.SCFightExtraPersonBoss:
                        result = ProtoBuf.Serializer.Deserialize<SCFightExtraPersonBoss>(m);
                        break;
                    case OpDefine.SCPersonBossNum:
                        result = ProtoBuf.Serializer.Deserialize<SCPersonBossNum>(m);
                        break;
                    case OpDefine.SCPersonBossClose:
                        result = ProtoBuf.Serializer.Deserialize<SCPersonBossClose>(m);
                        break;
#endregion
#region 消息协议号  88901 -  89000
                    case OpDefine.CSYearTaskInfo:
                        result = ProtoBuf.Serializer.Deserialize<CSYearTaskInfo>(m);
                        break;
                    case OpDefine.SCYearTaskInfo:
                        result = ProtoBuf.Serializer.Deserialize<SCYearTaskInfo>(m);
                        break;
                    case OpDefine.CSYearGetTaskReward:
                        result = ProtoBuf.Serializer.Deserialize<CSYearGetTaskReward>(m);
                        break;
                    case OpDefine.SCYearGetTaskReward:
                        result = ProtoBuf.Serializer.Deserialize<SCYearGetTaskReward>(m);
                        break;
                    case OpDefine.CSYearGetMainInfo:
                        result = ProtoBuf.Serializer.Deserialize<CSYearGetMainInfo>(m);
                        break;
                    case OpDefine.SCYearGetMainInfo:
                        result = ProtoBuf.Serializer.Deserialize<SCYearGetMainInfo>(m);
                        break;
                    case OpDefine.CSYearGetChapterInfo:
                        result = ProtoBuf.Serializer.Deserialize<CSYearGetChapterInfo>(m);
                        break;
                    case OpDefine.SCYearGetChapterInfo:
                        result = ProtoBuf.Serializer.Deserialize<SCYearGetChapterInfo>(m);
                        break;
                    case OpDefine.CSYearNorMalFight:
                        result = ProtoBuf.Serializer.Deserialize<CSYearNorMalFight>(m);
                        break;
                    case OpDefine.SCYearNorMalFight:
                        result = ProtoBuf.Serializer.Deserialize<SCYearNorMalFight>(m);
                        break;
                    case OpDefine.CSYearBossFight:
                        result = ProtoBuf.Serializer.Deserialize<CSYearBossFight>(m);
                        break;
                    case OpDefine.SCYearBossFight:
                        result = ProtoBuf.Serializer.Deserialize<SCYearBossFight>(m);
                        break;
                    case OpDefine.SSYearBossTick:
                        result = ProtoBuf.Serializer.Deserialize<SSYearBossTick>(m);
                        break;
                    case OpDefine.CSYearGetBoxReward:
                        result = ProtoBuf.Serializer.Deserialize<CSYearGetBoxReward>(m);
                        break;
                    case OpDefine.SCYearGetBoxReward:
                        result = ProtoBuf.Serializer.Deserialize<SCYearGetBoxReward>(m);
                        break;
                    case OpDefine.CSYearChooseBuff:
                        result = ProtoBuf.Serializer.Deserialize<CSYearChooseBuff>(m);
                        break;
                    case OpDefine.SCYearChooseBuff:
                        result = ProtoBuf.Serializer.Deserialize<SCYearChooseBuff>(m);
                        break;
                    case OpDefine.CSYearBuyAct:
                        result = ProtoBuf.Serializer.Deserialize<CSYearBuyAct>(m);
                        break;
                    case OpDefine.SCYearBuyAct:
                        result = ProtoBuf.Serializer.Deserialize<SCYearBuyAct>(m);
                        break;
                    case OpDefine.CSYearResetStage:
                        result = ProtoBuf.Serializer.Deserialize<CSYearResetStage>(m);
                        break;
                    case OpDefine.SCYearResetStage:
                        result = ProtoBuf.Serializer.Deserialize<SCYearResetStage>(m);
                        break;
#endregion
#region 消息协议号 100
                    case OpDefine.ErrorMessage:
                        result = ProtoBuf.Serializer.Deserialize<ErrorMessage>(m);
                        break;
                    case OpDefine.SystemMessage:
                        result = ProtoBuf.Serializer.Deserialize<SystemMessage>(m);
                        break;
#endregion
#region 消息协议号 9900
                    case OpDefine.CSGm:
                        result = ProtoBuf.Serializer.Deserialize<CSGm>(m);
                        break;
                    case OpDefine.CSTestStress:
                        result = ProtoBuf.Serializer.Deserialize<CSTestStress>(m);
                        break;
                    case OpDefine.SCTestStress:
                        result = ProtoBuf.Serializer.Deserialize<SCTestStress>(m);
                        break;
#endregion
                    default:
                        break;
                }
            }
            return result;
        }
        public static byte[] toBytes(Int32 opCode,Object obj){
            byte[] result = null;
            using (MemoryStream m = new MemoryStream()){
                ProtoBuf.Serializer.Serialize(m, obj);
                m.Position = 0;
                int length = (int)m.Length;
                result = new byte[length];
                m.Read(result, 0, length);
            }
            return result;
        }
   }
}
